Emaculation.com

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
ppc-osx-on-qemu-for-windows [2020/05/23 03:51] – [Networking] cat_7ppc-osx-on-qemu-for-windows [2020/11/02 12:51] – [Using a virtual usb drive to exchange files with the host] cat_7
Line 1: Line 1:
 ===== Installing Qemu for Windows ===== ===== Installing Qemu for Windows =====
  
-(Guide Updated February 182017)+(Guide Updated August 122020)
  
 ===== Introduction ===== ===== Introduction =====
  
-[[Qemu]] can run PPC Mac OS 9.0, 9.1, 9.2 and PPC OSX 10.010.1, 10.2, 10.3, 10.4 and 10.5+[[Qemu]] can run the PowerPC versions of Mac OS 9.0 to 9.2 and OSX 10.0 to 10.5Qemu can also run some OSX release previews.
 ===== Requirements ===== ===== Requirements =====
   * Qemu program \\   * Qemu program \\
Line 15: Line 15:
  
 Installations of other versions of Mac OS or OSX (roughly) follow the same path. \\ Installations of other versions of Mac OS or OSX (roughly) follow the same path. \\
 +NOTE: When trying to install Mac OS 9.0.4 you need to make sure to use a version that contains a Mac OS ROM version 5.6 or above. \\
 +Also make sure to set the -M parameter to -M mac99. \\
 ===== Qemu installation ===== ===== Qemu installation =====
  
Line 40: Line 42:
 Short explanation of the content of the file:\\ Short explanation of the content of the file:\\
  
-qemu-system-ppc.exe starts qemu with all the following as parameters:\\ +qemu-system-ppc.exe starts qemu with all of the following as parameters:\\ 
--L pc-bios defines the location of bios files to be used.\\ +  -L pc-bios defines the location of bios files to be used.\\ 
--boot d defines to boot from a drive entry marked as a cdrom, “-boot c” would define to boot from a drive entry marked as disk.\\ +  -boot d defines to boot from a drive entry marked as a cdrom, “-boot c” would define to boot from a drive entry marked as disk.\\ 
--M mac99 defines the mac model used(*).\\ +  -M mac99,via=pmu defines the mac model used(*).\\ 
--m 512 defines the amount of memory (in Mb) for OS9/OSX.\\ +  -m 512 defines the amount of memory (in Mb) for OS9/OSX.\\ 
--prom-env "auto-boot?=true" -prom-env "boot-args=-v" define boot parameters for openbios and Mac OSX. The “-v” makes the boot process verbose\\ +  -prom-env "auto-boot?=true" -prom-env "boot-args=-v" define boot parameters for openbios and Mac OSX. The “-v” makes the boot process verbose\\ 
--prom-env "vga-ndrv?=true" loads the qemu-vga.ndrv file to provide on the fly resolution swithing. Setting this to false ignores the driver\\ +  -prom-env "vga-ndrv?=true" loads the qemu-vga.ndrv file to provide on the fly resolution swithing. Setting this to false ignores the driver\\ 
--drive file=MacOS9.2.iso,format=raw,media=cdrom defines the name, location, format, and type of a cdrom (or dvd) image file to be used\\ +  -drive file=MacOS9.2.iso,format=raw,media=cdrom defines the name, location, format, and type of a cdrom (or dvd) image file to be used\\ 
--drive file=MacOS9.2.img,format=raw,media=disk defines the name, location, format, and type of a hard disk image file to be used\\ +  -drive file=MacOS9.2.img,format=raw,media=disk defines the name, location, format, and type of a hard disk image file to be used\\ 
--sdl instructs Qemu to use SDL for the graphical display\\ +  -sdl instructs Qemu to use SDL for the graphical display\\ 
--netdev user,id=network01 -device sungem,netdev=network01  tell qemu to use the sungem network device on a qemu-internal DHCP server\\ +  -netdev user,id=network01 -device sungem,netdev=network01  tell qemu to use the sungem network device on a qemu-internal DHCP server\\ 
--device VGA,edid=on presents additional resolutions to choose from in the guest \\+  -device VGA,edid=on presents additional resolutions to choose from in the guest \\
  
 (*)The mac model entry accepts 3 options for the via parameter: \\ (*)The mac model entry accepts 3 options for the via parameter: \\
Line 57: Line 59:
 mac99,via=pmu-adb (this allows some older Mac OS/Mac OS server builds to use a keyboard and mouse through the adb bus) \\ mac99,via=pmu-adb (this allows some older Mac OS/Mac OS server builds to use a keyboard and mouse through the adb bus) \\
 mac99,via=cuda (default, this allows use of the older adb (Apple Desktop Bus), now less supported cuda) \\ mac99,via=cuda (default, this allows use of the older adb (Apple Desktop Bus), now less supported cuda) \\
 +
  
   * Double-click qemu.bat. This starts Qemu and boots the MacOS9.2.iso installation CD image.   * Double-click qemu.bat. This starts Qemu and boots the MacOS9.2.iso installation CD image.
Line 62: Line 65:
 ===== Installation of Mac OS 9.2 ===== ===== Installation of Mac OS 9.2 =====
  
-To install Mac OS, you first need to partition the hard disk, so after you booted from the CD go into the "Utilities" folder and start the "Drive Setup" program. Select the entry "<not initialized>" and click "Initialize" and again in the next window. After initialization has finished and a disk icon has appeared on the desktop, quit the program. \\+To install Mac OS, you first need to partition the hard disk, so after you booted from the CD:  
 +  * Go into the "Utilities" folder and start the "Drive Setup" program.  
 +  * Select the entry "<not initialized>" and click "Initialize" and again in the next window.  
 +  * After initialization has finished and a disk icon has appeared on the desktop, quit the program. 
 You can then start the installation of Mac OS. Shut down Mac OS after the installation has finished. You can then start the installation of Mac OS. Shut down Mac OS after the installation has finished.
    
 ===== Booting the installed Mac OS ===== ===== Booting the installed Mac OS =====
-To boot the installed Mac OS, you need to edit the qemu.bat file: Change the "-boot d" argument to "-boot c" . Also reverse the order in which your disk and cd rom entry are listed in qemu.bat. When booting with "-boot c", make sure your hard disk image file is listed first. Save the file. Double-click qemu.bat and Mac OS will boot from the hard disk. \\+To boot the installed Mac OS, you need to edit the qemu.bat file:  
 +  * Change the "-boot d" argument to "-boot c" 
 +  * Reverse the order in which your disk and cd rom entry are listed in qemu.bat.  
 + 
 +When booting with "-boot c", make sure your hard disk image file is listed first. Save the file. Double-click qemu.bat and Mac OS will boot from the hard disk. \\
  
 Done. Done.
Line 125: Line 136:
 === Peer to peer networking between two Qemu instances === === Peer to peer networking between two Qemu instances ===
  
-Qemu can use socket networking to connect two peers. The peers will have no internet access, but can exchange data between each-other. Set one guest to be a listener for network traffic:+Qemu can use socket networking to connect two peers. The peers will have no internet access, but can exchange data between each-other. \\ 
 + The set one guest to be a listener for network traffic:
  
   * -device sungem,netdev=net1,mac=52:54:00:12:34:56 -netdev socket,id=net1,listen=:1234   * -device sungem,netdev=net1,mac=52:54:00:12:34:56 -netdev socket,id=net1,listen=:1234
Line 133: Line 145:
   * -device sungem,netdev=net1,mac=52:54:00:12:34:66 -netdev socket,id=net1,connect=127.0.0.1:1234   * -device sungem,netdev=net1,mac=52:54:00:12:34:66 -netdev socket,id=net1,connect=127.0.0.1:1234
  
 +For both instances, set the TCP/IP settings manually to a free ip address in your IP range and set the subnetmask to 255.255.255.0. No other settings have to be made.
  
 === Forwarding ports to the host === === Forwarding ports to the host ===
Line 194: Line 206:
 In Mac OS: First drag any mounted CD from the desktop into the trash\\ In Mac OS: First drag any mounted CD from the desktop into the trash\\
  
-Open the Qemu Monitor by pressing Ctrl-Alt-2 \\ +  * Open the Qemu Monitor by pressing Ctrl-Alt-2 \\ 
-Type "info block" to find the name of the CD drive in Qemu (most likely: ide1-cd0) \\ +  Type "info block" to find the name of the CD drive in Qemu (most likely: ide1-cd0) \\ 
-Type "eject ide1-cd0" \\ +  Type "eject ide1-cd0" \\ 
-Type "change ide1-cd0 Driveletter:/path/name-of-cd-image.iso" (note the forward slashes!) \\ +  Type "change ide1-cd0 Driveletter:/path/name-of-cd-image.iso" (note the forward slashes!) \\ 
-Close the Qemu Monitor by pressing Ctrl-Alt-2 again (do **not** close the window by clicking the close button)\\+  Close the Qemu Monitor by pressing Ctrl-Alt-2 again (do **not** close the window by clicking the close button)\\
  
 Also see the qemu documentation here: https://www.linux-kvm.org/page/Change_cdrom \\ Also see the qemu documentation here: https://www.linux-kvm.org/page/Change_cdrom \\
  
 ==== Mounting a real cd ==== ==== Mounting a real cd ====
-NOTE: you cannot mount Mac formatted CD's, but other formats work \\+**NOTE**You cannot mount Mac formatted CD's, but other formats work \\
  
-Open the Qemu Monitor by pressing Ctrl-Alt-2 \\ +  * Open the Qemu Monitor by pressing Ctrl-Alt-2 \\ 
-Type "info block" to find the name of the CD drive in Qemu (most likely: ide1-cd0) \\ +  Type "info block" to find the name of the CD drive in Qemu (most likely: ide1-cd0) \\ 
-Type "change ide1-cd0 /dev/cdrom" (note the forward slashes!) \\ +  Type "change ide1-cd0 /dev/cdrom" (note the forward slashes!) \\ 
-Close the Qemu Monitor by pressing Ctrl-Alt-2 again (do **not** close the window by clicking the close button)\\+  Close the Qemu Monitor by pressing Ctrl-Alt-2 again (do **not** close the window by clicking the close button)\\ 
 + 
 +==== Using a virtual usb drive to exchange files with the host ==== 
 +**NOTE: This option is not error-free**   
 + 
 +Create an empty folder to be used to exchange files. In the example below, the folder c:\QemuVVFAT is used.\\ 
 +Add the following to your command line: \\ 
 +-device usb-storage,drive=fat32 -drive file=fat:rw:c:\QemuVVFAT,id=fat32,format=raw,if=none 
 + 
 +An USB drive called Qemu-VVFAT will appear on your desktop. You can use it to exchange files with the host.
 ===== Experimental builds ===== ===== Experimental builds =====
  
Line 214: Line 235:
 Currently there are several such developments, in various states of reliability: Currently there are several such developments, in various states of reliability:
  
--Sound support\\+-Sound support\\
  
 You can download some of these experimental builds for our forum under **Experimental builds** : http://www.emaculation.com/forum/viewtopic.php?f=34&t=9028 You can download some of these experimental builds for our forum under **Experimental builds** : http://www.emaculation.com/forum/viewtopic.php?f=34&t=9028
  
 +
 +===== Issues =====
 +
 +  * Restart doesn't work in Mac OS. Use Shut Down and restart Qemu.
 +  * Qemu will not boot Mac OS when memory is set to 64Mb or less.
 +  * Sound only works reasonably well in Mac OS 9 guests.
 +  * Sound will not work in Mac OS guests with memory set to 1024Mb or more. 
 +
 +===== Useful additional command line arguments =====
 +
 +  * -k en-us sets the keyboard language (see below for possible languages)
 +  * -rtc base=localtime sets the guest time to the local machine time
 +
 +The language codes available are:\\
 +ar  de-ch  es  fo     fr-ca  hu  ja  mk     no  pt-br  sv \\
 +da  en-gb  et  fr     fr-ch  is  lt  nl     pl  ru     th \\
 +de  en-us  fi  fr-be  hr     it  lv  nl-be  pt  sl     tr \\
 +
 +  * -full-screen sets the guest to run full screen