Port-macppc archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: I documented 10.1 installation onto a blue and white G3:
ah, found this in UTM: "export QEMU command" ...
qemu-system-ppc -L
/Users/chris/Library/Containers/com.utmapp.UTM/Data/Library/Caches/qemu
-S -spice unix=on,addr=4D6EFE89-3FF4-4110-8E05-7FE7A930FE6D.spice,disable-ticketing=on,image-compression=off,playback-compression=off,streaming-video=off,gl=off
-chardev spiceport,name=org.qemu.monitor.qmp.0,id=org.qemu.monitor.qmp
-mon chardev=org.qemu.monitor.qmp,mode=control -nodefaults -vga none
-device tulip,mac=C6:F8:CC:03:A4:E2,netdev=net0 -netdev user,id=net0
-device VGA -smp cpus=1,sockets=1,cores=1,threads=1 -machine
mac99,via=cuda -accel tcg,tb-size=64 -m 256 -audio coreaudio -audiodev
spice,id=audio0 -device ide-cd,bus=ide.0,drive=drive2,bootindex=0
-drive "if=none,media=cdrom,id=drive2,file.filename=/Volumes/G-DRIVE/691-2684-A
Mac OS 9.0.4.iso,file.locking=off,readonly=on" -device
ide-hd,bus=ide.1,drive=drive0,bootindex=1 -drive
"if=none,media=disk,id=drive0,file.filename=/Users/chris/.Trash/Mac OS
9.1 (config only).utm/Data/Mac OS
9.1.qcow2,discard=unmap,detect-zeroes=unmap" -device virtio-serial
-device virtserialport,chardev=org.qemu.guest_agent,name=org.qemu.guest_agent.0
-chardev spiceport,name=org.qemu.guest_agent.0,id=org.qemu.guest_agent
-name "Mac OS 91 config only" -uuid
4D6EFE89-3FF4-4110-8E05-7FE7A930FE6D -rtc base=localtime -g
1280x720x32 -cpu G3 -usbdevice keyboard
(i earlier tossed one of the files in the trash)
On Sat, Mar 22, 2025 at 6:16 PM Chris Tucker <capa150%gmail.com@localhost> wrote:
>
> Here's the contents of "config.plist" for the UTM settings that run
> MacOS 9. Might offer some clues:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
> "http://www.apple.com/DTDs/PropertyList-1.0.dtd";>
> <plist version="1.0">
> <dict>
> <key>Backend</key>
> <string>QEMU</string>
> <key>ConfigurationVersion</key>
> <integer>4</integer>
> <key>Display</key>
> <array>
> <dict>
> <key>DownscalingFilter</key>
> <string>Linear</string>
> <key>DynamicResolution</key>
> <false/>
> <key>Hardware</key>
> <string>VGA</string>
> <key>NativeResolution</key>
> <false/>
> <key>UpscalingFilter</key>
> <string>Linear</string>
> </dict>
> </array>
> <key>Drive</key>
> <array>
> <dict>
> <key>Identifier</key>
> <string>2</string>
> <key>ImageType</key>
> <string>CD</string>
> <key>Interface</key>
> <string>IDE</string>
> <key>InterfaceVersion</key>
> <integer>0</integer>
> <key>ReadOnly</key>
> <true/>
> </dict>
> <dict>
> <key>Identifier</key>
> <string>0</string>
> <key>ImageName</key>
> <string>Mac OS 9.1.qcow2</string>
> <key>ImageType</key>
> <string>Disk</string>
> <key>Interface</key>
> <string>IDE</string>
> <key>InterfaceVersion</key>
> <integer>0</integer>
> <key>ReadOnly</key>
> <false/>
> </dict>
> </array>
> <key>Information</key>
> <dict>
> <key>Icon</key>
> <string>MacOS9.1.icns</string>
> <key>IconCustom</key>
> <true/>
> <key>Name</key>
> <string>Mac OS 9.1 (config only)</string>
> <key>Notes</key>
> <string>Mac OS 9.1
>
> To configure, use the CD/DVD drop-down to select a retail Mac OS 9.1
> CD image. ISO, CDR and uncompressed DMG are accepted formats.
>
> Then boot from the image, install onto the existing virtual HD, and
> shut down the guest VM. Edit this configuration, select the top IDE
> drive, and click Move Down. Save and boot into your new OS.
>
> Some extensions may not be compatible with the emulator. You can
> disable them by holding space during boot and using Extension Manager
> to turn them off.
>
> If the VM won’t start, your device may not support the audio sampling
> rate used by the emulator. You can disable sound and try
> again.</string>
> <key>UUID</key>
> <string>4D6EFE89-3FF4-4110-8E05-7FE7A930FE6D</string>
> </dict>
> <key>Input</key>
> <dict>
> <key>MaximumUsbShare</key>
> <integer>3</integer>
> <key>UsbBusSupport</key>
> <string>Disabled</string>
> <key>UsbSharing</key>
> <true/>
> </dict>
> <key>Network</key>
> <array>
> <dict>
> <key>Hardware</key>
> <string>tulip</string>
> <key>IsolateFromHost</key>
> <false/>
> <key>MacAddress</key>
> <string>C6:F8:CC:03:A4:E2</string>
> <key>Mode</key>
> <string>Emulated</string>
> <key>PortForward</key>
> <array/>
> </dict>
> </array>
> <key>QEMU</key>
> <dict>
> <key>AdditionalArguments</key>
> <array>
> <string>-g 1280x720x32</string>
> <string>-cpu G3</string>
> <string>-usbdevice keyboard</string>
> </array>
> <key>BalloonDevice</key>
> <false/>
> <key>DebugLog</key>
> <false/>
> <key>Hypervisor</key>
> <false/>
> <key>MachinePropertyOverride</key>
> <string>via=cuda</string>
> <key>PS2Controller</key>
> <false/>
> <key>RNGDevice</key>
> <false/>
> <key>RTCLocalTime</key>
> <true/>
> <key>TPMDevice</key>
> <false/>
> <key>TSO</key>
> <false/>
> <key>UEFIBoot</key>
> <false/>
> </dict>
> <key>Serial</key>
> <array/>
> <key>Sharing</key>
> <dict>
> <key>ClipboardSharing</key>
> <false/>
> <key>DirectoryShareMode</key>
> <string>None</string>
> <key>DirectoryShareReadOnly</key>
> <false/>
> </dict>
> <key>Sound</key>
> <array>
> <dict>
> <key>Hardware</key>
> <string>screamer</string>
> </dict>
> </array>
> <key>System</key>
> <dict>
> <key>Architecture</key>
> <string>ppc</string>
> <key>CPU</key>
> <string>default</string>
> <key>CPUCount</key>
> <integer>1</integer>
> <key>CPUFlagsAdd</key>
> <array/>
> <key>CPUFlagsRemove</key>
> <array/>
> <key>ForceMulticore</key>
> <false/>
> <key>JITCacheSize</key>
> <integer>0</integer>
> <key>MemorySize</key>
> <integer>256</integer>
> <key>Target</key>
> <string>mac99</string>
> </dict>
> </dict>
> </plist>
>
> On Sat, Mar 22, 2025 at 5:52 PM Chris Tucker <capa150%gmail.com@localhost> wrote:
> >
> > I just picked 256M coz that's what I have on my real machine :)
> > haven't tried other settings. I'm not sure what the RAM max is on this
> > sort of older Mac hardware is ... I suspect Qemu may fail if you set
> > the RAM higher than what these old Macs actually support ... not sure.
> >
> > Yes Mac99 machine in the drop-down menu is what I have.
> >
> > I just tested the mouse on MacOS 9 and with USB set to "disabled" it
> > captured the mouse OK after I pressed the "capture input devices" icon
> > in UTM. (icon depicts a mouse cursor with rays emanating from it in a
> > circle.)
> >
> > I've not tried mouse use on NetBSD/X11 in Qemu on PowerPC emulation. I
> > imagine it works since it works on MacOS 9.1.
> >
> > Yes sungem iirc didn't work for me, which is why I tried tulip which did work.
> >
> > Speed of the system seems to be quite reasonable, considering it's
> > emulating PPC on an M1 with a "single core." With this sort of
> > emulation, I'm more impressed it works at all, much less that it runs
> > speedily or not. haha.
> >
> > On Sat, Mar 22, 2025 at 5:35 PM Andrew Randrianasulu
> > <randrianasulu%gmail.com@localhost> wrote:
> > >
> > >
> > >
> > > вс, 23 мар. 2025 г., 03:24 Chris Tucker <capa150%gmail.com@localhost>:
> > >>
> > >> Hello, I am not familiar with netbsd-current and I've never installed it.
> > >
> > >
> > >
> > > I suspect there might be regression, but not sure if it surfaces always, or only on my machine. I see qemu was used for development recently, but all my (netbsd/macppc cdrom/iso) builds fail in same way very early.
> > >
> > >
> > >>
> > >> I was able to install 10.1 on Qemu (UTM) using one of the config files here:
> > >> https://github.com/adespoton/utmconfigs
> > >>
> > >> If I recall correctly, I used one of the Classic MacOS 9.1 UTM config
> > >> files there. This link:
> > >> https://github.com/adespoton/utmconfigs/blob/main/Mac%20OS%209.1%20(config%20only).utm.zip
> > >>
> > >> But I had to play around to actually get that to work: Try opening
> > >> that config file, then additionally make the following changes to it.
> > >> I got the following to work on my Macbook Air M1 running UTM:
> > >>
> > >> (Make sure have the netbsd 10.1 (or your netbsd-current) ISO "loaded"
> > >> in the UTM drive)
> > >>
> > >> System menu in UTM prefs for the macos 9.1 config file:
> > >> cpu: default
> > >> cpu cores: 1
> > >> RAM: 256megs
> > >
> > >
> > > It dails for me at 270 mb of ram and up on any supported qemu machine .... :( 256, 257, 258 and below works ...not sure why.
> > >
> > >
> > >>
> > >> Qemu menu:
> > >> QEMU Machine Properties: via=cuda
> > >
> > >
> > >
> > > I guess this mean -M mac99 machine ....
> > >
> > > Does mouse cursor works ok for you in this (no usb) configuration? In NetBSD or MacOS? It does not for me until I add -icount shift=1 but then everything becomes perceptibly slower ....
> > >>
> > >>
> > >> Input menu:
> > >> USB support: Disabled
> > >>
> > >> Network menu: Emulated Network Card: tulip
> > >
> > >
> > >
> > > sungem (default) does not work for you too?
> > >
> > >
> > >>
> > >> Then try booting it with something like boot cd:,\ofwboot.xcf netbsd
> > >>
> > >> On Fri, Mar 14, 2025 at 9:18 PM Andrew Randrianasulu
> > >> <randrianasulu%gmail.com@localhost> wrote:
> > >> >
> > >> >
> > >> >
> > >> > сб, 1 мар. 2025 г., 05:31 Chris Tucker <capa150%gmail.com@localhost>:
> > >> >>
> > >> >> Hope you don't mind that I post it here, in case someone else finds it
> > >> >> to be helpful.
> > >> >>
> > >> >> https://github.com/capagh/NetBSD10.1-B-W-Mac
> > >> >>
> > >> >> How to install NetBSD 10.1 on a Blue-and-White Macintosh PowerPC G3
> > >> >
> > >> >
> > >> > Thanks for this writeup, I tried to build iso-image out of NetBSD -Current for mappc using slightly modified instructions, but sadly it does not boot on qemu? Dies early .....
> > >> >
> > >> > If you have time can you check if -current kernel bootable on real G3?
> > >> >
> > >> >
> > >> >>
> > >> >> Direct questions or comments to capa150 at gmail.com
> > >> >>
> > >> >> Contents:
> > >> >>
> > >> >> Background story
> > >> >> Performing a dual-boot MacOS/NetBSD install:
> > >> >> How to build an install kernel and a regular kernel for NetBSD 10.1/macppc.
> > >> >> Preventing caps-lock from freezing a blue-and-white G3
> > >> >> X11 with the blue-and-white
> > >> >>
> > >> >> There are several ways to install NetBSD 10.1 on a Mac. This text
> > >> >> describes two of the ways -- one is a dual-boot Classic MacOS/NetBSD
> > >> >> 10.1 system, and the second is a NetBSD 10.1-only system. There are
> > >> >> other methods described in the NetBSD install document.
> > >> >>
> > >> >> What I used for this install:
> > >> >> A Blue-and-White Macintosh G3 with a CD/DVD drive.
> > >> >> An IDE hard disk attached to a PCI IDE card such as a Sonnet Tempo or
> > >> >> Acard/Ahard M6280, M6880, M6860 or M6260 (the ‘M’ means it is bootable
> > >> >> by a Mac. Otherwise it’s for PCs.) I’ve found the motherboard IDE to
> > >> >> be buggy.
> > >> >> A copy of MacOS 9 on CD/DVD (to partition the drive using MacOS 9’s
> > >> >> Drive Setup utility.)
> > >> >> A copy of MacOS 8.6 (I like 8.6 more than 9. I used Drive Setup on 9
> > >> >> to partition the disk. Then I installed 8.6.)
> > >> >> A copy of NetBSD 10.1 on CD/DVD.
> > >> >> (https://cdn.netbsd.org/pub/NetBSD/images/10.1/ titled
> > >> >> “NetBSD-10.1-macppc.iso.”) (Alternately, skip the ISO and just install
> > >> >> via FTP.)
> > >> >> The macOS X application “QuickFTP,” available free from the macOS app store.
> > >> >>
> > >> >> Note: I’ve not tried a SCSI disk on my Blue-and White. I suspect SCSI
> > >> >> would wholly avoid the problems I encountered. Consider using blueSCSI
> > >> >> or ZuluSCSI as finding a good SCSI drive is difficult these days.
> > >> >>
> > >> >> This install assumes the Mac has one hard disk. Be sure to back-up any
> > >> >> important data before proceeding.
> > >> >>
> > >> >> It’s important to note the Blue-and-White G3 Macs use Open Firmware version 3.x.
> > >> >> The install process for Macs that use Open Firmware 1.x or 2.x is
> > >> >> different and not covered in this document. Refer to the official
> > >> >> NetBSD install notes for more.
> > >> >>
> > >> >> The backstory:
> > >> >>
> > >> >> Problem No. 1:
> > >> >> My Blue-and-White G3 came with an IDE hard drive attached to the
> > >> >> motherboard’s IDE slot. I installed NetBSD 10.1 and it seemed to work.
> > >> >> But eventually I noticed a quirk: When issued a "shutdown -r now"
> > >> >> command, the system will often state:
> > >> >>
> > >> >> "...
> > >> >> About to run shutdown hooks ...
> > >> >> Stopping cron.
> > >> >> Stopping inetd."
> > >> >>
> > >> >>
> > >> >> And then it hangs. This is an incomplete shut-down, as there are
> > >> >> supposed to be more lines after “Stopping inetd.” But at other times
> > >> >> it would complete the shutdown process. I eventually found the process
> > >> >> rndctl -- which is called during shutdown -- would cause the computer
> > >> >> to sometimes hang. Rndctl is used for entropy-related work.
> > >> >>
> > >> >> (See NetBSD Problem Report #59014
> > >> >> https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=59014 for
> > >> >> more on this problem.)
> > >> >>
> > >> >> I determined the problem is caused by the CMD IDE controller chip the
> > >> >> blue-and-white uses. This controller is known to be buggy, according
> > >> >> to the Wikipedia entry on it. https://en.wikipedia.org/wiki/CMD640
> > >> >>
> > >> >> I resolved the rndctl problem by using a Sonnet Tempo IDE PCI
> > >> >> controller card instead of the motherboard controller. Which led to
> > >> >> ...
> > >> >>
> > >> >> Problem No. 2:
> > >> >>
> > >> >> Although I resolved the rndctrl problem, I gained a new problem.
> > >> >>
> > >> >> When booting off the Tempo, the Mac would report hundreds of errors
> > >> >> when running NetBSD, such as: "wd0: aborted command, interface CRC
> > >> >> error" and “wd0c: error reading fsbn.”
> > >> >>
> > >> >> I believe the problem is due to the netbsd kernel accessing my UDMA
> > >> >> IDE hard disk in UDMA mode 6 (ATA/133), but the Blue and White G3
> > >> >> specifications indicate the Mac is designed for UDMA mode 2 (ATA/33).
> > >> >>
> > >> >> The Mac can't handle the higher speed and thus complains profusely.
> > >> >>
> > >> >> I resolved this problem by compiling two custom kernels -- one for
> > >> >> installation, and one for regular use. Both are the same as the
> > >> >> default kernels except they limit the IDE drive mode to UDMA mode 2.
> > >> >> (I also changed the console text color to green text on a black
> > >> >> background, with white text for kernel messages -- default is black
> > >> >> text on white background. Nothing else has been changed.)
> > >> >>
> > >> >> (See NetBSD Problem Report #59078
> > >> >> https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=59078 for
> > >> >> more.)
> > >> >>
> > >> >> Performing a dual-boot MacOS/NetBSD install:
> > >> >>
> > >> >> 1. Insert the OS 9 install disc into the Mac. Hold down the ‘C’ key to
> > >> >> boot from the CD.
> > >> >>
> > >> >> 2. Open the “Utilities” folder on the disc. Launch “Drive Setup.” (The
> > >> >> version of Drive Setup that comes with OS 9 is required. Older
> > >> >> versions will not work, according to the NetBSD install document.)
> > >> >>
> > >> >> 3. For this example install, three partitions will be used. One for
> > >> >> MacOS, one for NetBSD root and usr, and one for NetBSD swap. Select
> > >> >> the drive to be initialized then click “Custom Setup.” Set
> > >> >> “Partitioning Scheme” to three partitions. The top partition will be
> > >> >> for MacOS. It should be at least 400 megabytes in size but you can
> > >> >> make it larger if you like. Set the “Type” to either “MacOS Standard”
> > >> >> (HFS) or “MacOS Extended” (HFS+).
> > >> >>
> > >> >> 4. Select the second-from-top partition. This will be your NetBSD root
> > >> >> and usr partition. Make this partition as large as possible, while
> > >> >> keeping some space free for swap. Set the “Type” to “A/UX Root.”
> > >> >>
> > >> >> 5. Select the third-from-top partition. This will be your swap drive.
> > >> >> It should be the same size as the amount of RAM available. “Type”
> > >> >> should be set to “A/UX Swap.”
> > >> >>
> > >> >> 6. There may be a small amount of space at the bottom of the partition
> > >> >> map labeled “Extra.” This is OK.
> > >> >>
> > >> >> 7. Click “OK” followed by “Initialize.” Quit Drive Setup.
> > >> >>
> > >> >> 8. Rename your new Mac drive if you like. Run the MacOS installer (I
> > >> >> have also installed MacOS 8.5/8.6 for a dual-boot system. However you
> > >> >> must use the newer MacOS 9 Drive Setup application to initially
> > >> >> partition the drive, not the version of Drive Setup that comes with
> > >> >> 8.5/8.6.)
> > >> >>
> > >> >> 9. Reboot into the new MacOS. Quit the MacOS Setup Assistant. Insert
> > >> >> the NetBSD 10.1 disc. Drag “ofwboot.xcf” to the Mac’s hard drive.
> > >> >>
> > >> >> Here are the two kernels limited to UDMA mode 2:
> > >> >>
> > >> >> netbsd-INSTALL
> > >> >> netbsd
> > >> >>
> > >> >> Download netbsd-INSTALL and move it to the MacOS drive.
> > >> >>
> > >> >> QuickFTP Server, running on my MacBook Air, was a helpful tool for
> > >> >> this installation. I connected my blue-and-white G3 to the local area
> > >> >> network and set the TCP/IP control panel to DHCP. I then used Internet
> > >> >> Explorer on the G3 to access the files from QuickFTP, using the IP
> > >> >> address displayed on QuickFTP. (example “ftp://10.0.0.55”; into the
> > >> >> Internet Explorer address bar.) I right-clicked (or control-click)
> > >> >> each file and saved it to the base level of the Mac’s drive.
> > >> >>
> > >> >> QuickFTP uses this default path to host files, but it can be changed:
> > >> >> /Users/chris/Library/Containers/QuickFTP/Data/
> > >> >> For this document, I changed this to /Users/chris instead, as it’s
> > >> >> easier to access.
> > >> >> Set a username, password, and read and write access on QuickFTP.
> > >> >>
> > >> >> Both ofwboot.xcf and the modified installer netbsd-INSTALL files must
> > >> >> be in the base level of the Mac’s drive, not in any subfolder.
> > >> >>
> > >> >> 10. Reboot the Mac and hold down command-option-O-F to boot into Open
> > >> >> Firmware. The NetBSD install document describes how the Open Firmware
> > >> >> bootloader works. It can be tricky to figure out, and the exact
> > >> >> command varies depending on the hardware available. Experimentation is
> > >> >> pretty much mandatory. Here’s the command my G3 uses:
> > >> >>
> > >> >> 0 > boot /pci@80000000/pci-bridge@d/Ultra-Tek100P@3/sd:,\ofwboot.xcf
> > >> >> netbsd-INSTALL
> > >> >>
> > >> >> The boot process should begin. You should see a line about the hard
> > >> >> disk on the screen, so make note of the drive name. In my case the
> > >> >> drive is “wd0.”
> > >> >>
> > >> >> When asked, accept “vt100” as terminal type.
> > >> >>
> > >> >> 12. Select “(S)hell” when asked.
> > >> >>
> > >> >> 11. Optional: type:
> > >> >>
> > >> >> # disklabel /dev/wd0
> > >> >>
> > >> >> to see some cool partition information. Make note of the letter
> > >> >> assigned the partitions. On my install, “a” is assigned to 4.2BSD
> > >> >> (root/usr) and “b” is assigned to swap. (Do not use disklabel for any
> > >> >> other purpose as it will wreck your partitions.)
> > >> >>
> > >> >> 12. Type:
> > >> >>
> > >> >> Create a NetBSD filesystem on partition “a,” mount it, and create an etc folder:
> > >> >> # newfs /dev/wd0a
> > >> >> # mount /dev/wd0a /targetroot
> > >> >> # mkdir /targetroot/etc
> > >> >>
> > >> >> (The official NetBSD install notes say to mount this partition as /mnt
> > >> >> but this will cause an error later during the install, so use
> > >> >> /targetroot.)
> > >> >>
> > >> >>
> > >> >> 13. Create an fstab file: Type the following (I used tabs to keep
> > >> >> everything tidy, but you can also use spaces.):
> > >> >>
> > >> >> # cat > /targetroot/etc/fstab
> > >> >> /dev/wd0a / ffs rw 1 1
> > >> >> /dev/wd0b none swap sw 0 0
> > >> >> ptyfs /dev/pts ptyfs rw
> > >> >>
> > >> >> Press the return key at the end of the ptyfs line, followed by ctrl-d
> > >> >> to save the file.
> > >> >>
> > >> >> Unmount the filesystem:
> > >> >>
> > >> >> # umount /targetroot
> > >> >>
> > >> >> 14.(optional) Type “pdisk /dev/wd0c” (“c” here represents the entire
> > >> >> drive) to learn more about partitions.
> > >> >> Type “p” to print the partition table. Do not run any other command.
> > >> >> Make note of the leftmost numbers associated with the partitions as
> > >> >> you’ll need this to boot from Open Firmware later on. In particular,
> > >> >> note the number associated with the HFS/HFS+ partition and also with
> > >> >> the AU/X Root partition. Type “q” to quit.
> > >> >>
> > >> >> 15. Actually install NetBSD! Type “sysinst” to run the installer. Do
> > >> >> NOT select option “a” as this will demolish the partitions. Instead
> > >> >> select option “c: Re-install sets or install additional set.” then
> > >> >> “yes” then “b: wd0 ...” then “a: Full installation” (or as desired)
> > >> >> then “a: CD-ROM / DVD” (or as desired.)
> > >> >>
> > >> >> Note: If you use networking, be sure to specify “100baseTX” instead of
> > >> >> the default “autoselect” so ethernet functions correctly.
> > >> >>
> > >> >> 16. You’ll now be asked to set up entropy. The way I did it is with
> > >> >> option “c: Load raw binary random data.”
> > >> >>
> > >> >> In Terminal.app on my M1:
> > >> >> % dd if=/dev/random bs=32 count=1 of=/Users/chris/random.tmp
> > >> >>
> > >> >> Select “b: Download via ftp”
> > >> >> Select “a: bm0” (onboard ethernet)
> > >> >>
> > >> >> When you see Sysinst show this message:
> > >> >> “Network media type (empty to autoconfigure) [autoselect]:”
> > >> >> Do not hit return to accept “autoselect”, as this does not work.
> > >> >> Instead type in:
> > >> >> 100baseTX
> > >> >>
> > >> >> Then “Yes” to perform autoconfiguration.
> > >> >> Type in a hostname as desired.
> > >> >> Feel free to leave domain blank.
> > >> >>
> > >> >> To configure FTP, enter fields for Host, User and Password (same as
> > >> >> what QuickFTP uses) as necessary and start download.
> > >> >>
> > >> >> Now you’ll be back at the sysinst main menu.
> > >> >>
> > >> >> Do not reboot yet. Sysinst installed the regular default kernel and
> > >> >> that needs to be replaced with the kernel modified for UDMA mode 2.
> > >> >>
> > >> >> Select “Exit Install System”
> > >> >>
> > >> >> Mount our new system and rename the default kernel:
> > >> >> # mount /dev/wd0a /mnt
> > >> >> # cd /mnt
> > >> >> # mv netbsd netbsd.original
> > >> >>
> > >> >> Download the modified kernel:
> > >> >> # ftp 10.0.0.220
> > >> >> ftp> get netbsd
> > >> >> ftp> quit
> > >> >>
> > >> >> Modify permissions to match original:
> > >> >> # chmod 755 netbsd
> > >> >> # cd /
> > >> >> # umount /mnt
> > >> >> # reboot
> > >> >>
> > >> >> When you hear the chime, hold down command-option-O-F again to get
> > >> >> into Open Firmware. Boot off the modified regular kernel:
> > >> >>
> > >> >> 0 > boot /pci@80000000/pci-bridge@d/Ultra-Tek100P@3/sd:,\ofwboot.xcf netbsd
> > >> >>
> > >> >> 16. NetBSD will state /etc/rc.conf isn’t configured. Hit return to
> > >> >> accept /bin/sh. Type:
> > >> >>
> > >> >> # export TERM=vt100
> > >> >> # mount -uw /
> > >> >>
> > >> >> Now edit the rc.conf file:
> > >> >>
> > >> >> # vi /etc/rc.conf
> > >> >>
> > >> >> A short lesson in how to use the vi text editor:
> > >> >> Vi has two modes: command mode and edit mode.
> > >> >> In command mode, use the arrow keys (or the HJKL keys) to move the
> > >> >> cursor around.
> > >> >> In command mode, use “x” key to delete text.
> > >> >> Press “i” key to enter insert mode. Now you can edit text.
> > >> >> Press “ESC” to exit insert mode and return to command mode.
> > >> >> Press “ESC” followed by “:wq” to write the file to disk and quit.
> > >> >>
> > >> >> Edit rc.conf to make these changes and additions:
> > >> >>
> > >> >> rc_configured=YES
> > >> >> dhcpcd=YES
> > >> >> wscons=YES
> > >> >> hostname=netbsd (or whatever name you prefer)
> > >> >> ifconfig_bm0=“media 100baseTX mediaopt full-duplex”
> > >> >>
> > >> >> Esc :wq to write the file to disk and quit vi.
> > >> >>
> > >> >> Set filesystem to read-only (so fsck doesn’t complain), and exit to
> > >> >> resume booting:
> > >> >>
> > >> >> # mount -ur /
> > >> >> # exit
> > >> >>
> > >> >> The boot process will continue.
> > >> >>
> > >> >> Login as root (no password yet.)
> > >> >>
> > >> >> Add a password for root:
> > >> >> # passwd root
> > >> >>
> > >> >> 19. Create a normal user (e.g. johndoe) and a home directory for that
> > >> >> user, and add that user to the superuser group:
> > >> >> # useradd -m -G wheel johndoe
> > >> >>
> > >> >> Give the user a password:
> > >> >> # passwd johndoe
> > >> >>
> > >> >> All done.
> > >> >>
> > >> >> To reboot:
> > >> >> # shutdown -r now
> > >> >> To shut-down and power-off:
> > >> >> # shutdown -p now
> > >> >>
> > >> >> If you wish to boot into MacOS, boot without holding command-option-O-F.
> > >> >>
> > >> >> ------
> > >> >>
> > >> >> How to build an install kernel and a regular kernel for NetBSD 10.1/macppc.
> > >> >>
> > >> >> This section is optional, as I’ve already made the two kernels
> > >> >> available for download. However, if you’d like to build those kernels
> > >> >> yourself, the steps are listed here:
> > >> >>
> > >> >> For this example, two computers are used: a blue-and-white G3, and a
> > >> >> Macbook Air M1.
> > >> >>
> > >> >> Install UTM (Qemu) on the M1. Create an emulated amd64 machine and
> > >> >> install NetBSD 10.1. (Running NetBSD for Arm would be more sensible
> > >> >> for M1, but I couldn’t get it to install, hence the choice to emulate
> > >> >> amd64 instead.)
> > >> >>
> > >> >> In UTM preferences, set the number of cores to 8 (for M1).
> > >> >> Create a regular user in group wheel.
> > >> >> Enable dhcpcd with (as root):
> > >> >>
> > >> >> # /etc/rc.d/dhcpcd onestart
> > >> >>
> > >> >> OBTAINING SOURCES
> > >> >>
> > >> >> Build sources as described here:
> > >> >> https://www.netbsd.org/docs/guide/en/chap-fetch.html
> > >> >>
> > >> >> (as root):
> > >> >> # mkdir /usr/src
> > >> >> # chown chris /usr/src
> > >> >>
> > >> >> exit to return to regular user.
> > >> >>
> > >> >> Grab the source files (no need for xsrc.tgz, as I’ll be using this
> > >> >> emulated machine for compiling only.):
> > >> >>
> > >> >> $ ftp -i ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-10.1/source/sets/
> > >> >> ftp> get gnusrc.tgz
> > >> >> ftp> get sharesrc.tgz
> > >> >> ftp> get src.tgz
> > >> >> ftp> get syssrc.tgz
> > >> >> ftp> quit
> > >> >>
> > >> >> You should now have four *.tgz files in your home directory.
> > >> >>
> > >> >> Extract all them all:
> > >> >>
> > >> >> $ for file in *.tgz
> > >> >> > do
> > >> >> > tar -xzf $file -C /
> > >> >> > done
> > >> >>
> > >> >> This will take a while.
> > >> >>
> > >> >> CROSS-COMPILING
> > >> >>
> > >> >> Since I’m using amd64 to create macppc/powerpc kernels,
> > >> >> cross-compilation is required.
> > >> >>
> > >> >> https://www.netbsd.org/docs/guide/en/chap-build.html#chap-boot-cross-build-kernel
> > >> >>
> > >> >> Although the instructions call for placing sources in ~/cvs/src, I
> > >> >> chose to keep them in /usr/src instead.
> > >> >>
> > >> >> $ mkdir ~/obj
> > >> >> $ cd /usr/src
> > >> >>
> > >> >> Build the tools:
> > >> >>
> > >> >> $ ./build.sh -U -O ~/obj -j8 -m macppc -a powerpc tools
> > >> >>
> > >> >> where the 8 in -j8 is the number of cores on your system.
> > >> >>
> > >> >> After a while, this process will print a summary of results.
> > >> >>
> > >> >> Configure the kernel:
> > >> >>
> > >> >> $ cd /usr/src/sys/arch/macppc/conf
> > >> >>
> > >> >> The configuration file titled INSTALL is the one with the RAM disk for
> > >> >> installation. Copy the original and work on the copy:
> > >> >>
> > >> >> cp INSTALL INSTALL2
> > >> >>
> > >> >> Use your preferred editor with INSTALL2.
> > >> >> Change the line:
> > >> >> wd* at atabus? drive ? flags 0x0000
> > >> >> to
> > >> >> wd* at atabus? drive? flags 0x0aac
> > >> >> and save the change.
> > >> >>
> > >> >> This will limit the drive to UDMA mode 2 (ATA/33) which is the drive
> > >> >> specification for the blue-and-white G3. See the man page for wd for
> > >> >> more information.
> > >> >>
> > >> >> Build the install kernel as a “release.” This, apparently, also builds
> > >> >> the Unix utilities required on the installer.
> > >> >>
> > >> >> $ cd /usr/src
> > >> >> $ ./build.sh -U -j8 -O ~/obj -m macppc -a powerpc kernel=INSTALL2 release
> > >> >>
> > >> >> (Running on an Apple M1 cpu, this task will take around 12 hours to complete.)
> > >> >>
> > >> >> https://www.netbsd.org/docs/guide/en/chap-inst-media.html
> > >> >>
> > >> >> There will be a newly-created install kernel with the changes for UDMA
> > >> >> mode 2 in the directory ~/obj/distrib/macppc/floppies/md-kernel/.
> > >> >>
> > >> >> However, this new file isn’t titled “INSTALL2,” but simply “netbsd-INSTALL.”
> > >> >>
> > >> >> Transfer this file to the base level of the hard drive of the Classic
> > >> >> MacOS machine.
> > >> >>
> > >> >> In my case, how I did this was to sftp the file from my UTM machine to
> > >> >> the M1 host OS. From the ~/obj/distrib/macppc/floppies/md-kernel/
> > >> >> directory:
> > >> >>
> > >> >> Transfer files from the emulated amd64 machine to my M1 Mac’s OS:
> > >> >> $ sftp chris@10.0.0.220 (change the address as necessary)
> > >> >> sftp> put netbsd-INSTALL
> > >> >> sftp> quit
> > >> >>
> > >> >> netbsd-INSTALL is now in the M1’s home directory (which is,
> > >> >> co-incidentally, also QuickFTP’s working directory.)
> > >> >>
> > >> >> On the blue-and-white, running Classic MacOS, point Internet Explorer
> > >> >> or Netscape to ftp://10.0.0.220 and right-click netbsd-INSTALL to save
> > >> >> the file to the base level of the hard disk.
> > >> >>
> > >> >> COMPILE THE REGULAR KERNEL
> > >> >>
> > >> >> The installation kernel is ready, but we need a regular kernel as well.
> > >> >>
> > >> >> https://www.netbsd.org/docs/guide/en/chap-kernel.html
> > >> >>
> > >> >> On the emulated amd64:
> > >> >>
> > >> >> $ cd /usr/src/sys/arch/macppc/conf
> > >> >>
> > >> >> $ cp GENERIC GENERIC2
> > >> >>
> > >> >> Use your preferred editor with GENERIC2.
> > >> >> Change the line:
> > >> >> wd* at atabus? drive ? flags 0x0000
> > >> >> to
> > >> >> wd* at atabus? drive? flags 0x0aac
> > >> >> and save the change.
> > >> >>
> > >> >> $ cd /usr/src
> > >> >> $ ./build.sh -U -j8 -O ~/obj -m macppc -a powerpc kernel=GENERIC2
> > >> >>
> > >> >> A summery will tell you where the new kernel (called “netbsd”) is located.
> > >> >>
> > >> >> Copy this from the UTM machine to the home directory on my M1:
> > >> >>
> > >> >> $ cd /home/chris/obj/sys/arch/macppc/compile/GENERIC2/
> > >> >> $ sftp chris@10.0.0.220
> > >> >> sftp> put netbsd
> > >> >> sftp> quit
> > >> >>
> > >> >> It’s now ready to be copied to the blue-and-white G3 (see elsewhere).
> > >> >>
> > >> >> ----
> > >> >>
> > >> >> Preventing caps-lock from freezing a blue-and-white G3
> > >> >>
> > >> >> On my B&W G3 I noticed the caps-lock key would sometimes -- but not
> > >> >> always -- cause the computer to freeze. Unplugging the USB cable would
> > >> >> un-freeze the machine, but also cause strange behavior on the console.
> > >> >> As such, I found it useful to simultaneously ssh into the B&W from my
> > >> >> M1 Air while messing around with caps-lock so I could more easily
> > >> >> reboot the machine.
> > >> >>
> > >> >> The keyboard in question is a late-1990s Apple M2452.
> > >> >>
> > >> >> My “solution” was to map the caps-lock key to the left shift key.
> > >> >> Therefore I have two left shift keys, and no caps-lock. But at least I
> > >> >> don’t accidentally freeze my Mac any more.
> > >> >>
> > >> >> Edit /etc/wscons.conf.
> > >> >> Underneath the line that begins: “#mapfile
> > >> >> /usr/share/wscons/keymaps/pckbd.sv.svascii”
> > >> >> add a new, uncommented line:
> > >> >> mapfile /usr/share/wscons/keymaps/pckbd.caps.shift
> > >> >> and save the change.
> > >> >>
> > >> >> Then:
> > >> >> # cd /usr/share/wscons/keymaps/
> > >> >> # vi pckbd.caps.shift
> > >> >>
> > >> >> and add one line to this file:
> > >> >> keysym Caps_Lock = Shift_L
> > >> >>
> > >> >> Save and reboot. Caps will now map to shift.
> > >> >>
> > >> >> X11 with the blue-and-white
> > >> >>
> > >> >> Here’s a functional xorg.conf file for the Mac with a ATI Rage 128 PCI card.
> > >> >> It’s probably nowhere near optimal. 3D acceleration is not enabled.
> > >> >> Let me know if you know how to enable acceleration.
> > >> >>
> > >> >> Place this text as /etc/X11/xorg.conf
> > >> >>
> > >> >> Section "ServerLayout"
> > >> >> Identifier "X.org Configured"
> > >> >> Screen 0 "Screen0" 0 0
> > >> >> InputDevice "Mouse0" "CorePointer"
> > >> >> InputDevice "Keyboard0" "CoreKeyboard"
> > >> >> EndSection
> > >> >>
> > >> >> Section "Files"
> > >> >> ModulePath "/usr/X11R7/lib/modules"
> > >> >> FontPath "/usr/X11R7/lib/X11/fonts/misc/"
> > >> >> FontPath "/usr/X11R7/lib/X11/fonts/TTF/"
> > >> >> FontPath "/usr/X11R7/lib/X11/fonts/Type1/"
> > >> >> FontPath "/usr/X11R7/lib/X11/fonts/75dpi/"
> > >> >> FontPath "/usr/X11R7/lib/X11/fonts/100dpi/"
> > >> >> EndSection
> > >> >>
> > >> >> Section "Module"
> > >> >> #Load "dbe" #action
> > >> >> #Load "extmod" #action
> > >> >> Load "dri"
> > >> >> Load "dri2"
> > >> >> Load "glx"
> > >> >> Load "shadow"
> > >> >> EndSection
> > >> >>
> > >> >> Section "InputDevice"
> > >> >> Identifier "Keyboard0"
> > >> >> Driver "kbd"
> > >> >> Option "Protocol" "wskbd"
> > >> >> Option "Device" "/dev/wskbd"
> > >> >> EndSection
> > >> >>
> > >> >> Section "InputDevice"
> > >> >> Identifier "Mouse0"
> > >> >> Driver "mouse"
> > >> >> Option "Protocol" "wsmouse"
> > >> >> Option "Device" "/dev/wsmouse"
> > >> >> Option "ZAxisMapping" "4 5 6 7"
> > >> >> EndSection
> > >> >>
> > >> >> Section "Monitor"
> > >> >> Identifier "Monitor0"
> > >> >> VendorName "Monitor Vendor"
> > >> >> ModelName "Monitor Model"
> > >> >> #HorizSync 58-62 #action
> > >> >> #VertRefresh 75-117 #action
> > >> >> #Option "VGA-0" "VGA monitor" #action
> > >> >> Modeline "1024x768" 78.75 1024 1040 1136 1312 768 769 772 800 -hsync -vsync
> > >> >> Modeline "1024x768" 78.75 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
> > >> >> EndSection
> > >> >>
> > >> >> Section "Monitor"
> > >> >> Identifier "LVDS monitor"
> > >> >> Option "LVDS" "LVDS note"
> > >> >> EndSection
> > >> >>
> > >> >> Section "Device"
> > >> >> ### Available Driver options are:-
> > >> >> ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
> > >> >> ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
> > >> >> ### <percent>: "<f>%"
> > >> >> ### [arg]: arg optional
> > >> >> #Option "NoAccel" # [<bool>]
> > >> >> #Option "Dac6Bit" # [<bool>]
> > >> >> #Option "VGAAccess" # [<bool>]
> > >> >> #Option "ShowCache" # [<bool>]
> > >> >> #Option "SWcursor" # [<bool>]
> > >> >> #Option "VideoKey" # <i>
> > >> >> #Option "PanelWidth" # <i>
> > >> >> #Option "PanelHeight" # <i>
> > >> >> #Option "ProgramFPRegs" # [<bool>]
> > >> >> #Option "DMAForXv" # [<bool>]
> > >> >> #Option "ForcePCIMode" # [<bool>]
> > >> >> #Option "CCEPIOMode" # [<bool>]
> > >> >> #Option "CCENoSecurity" # [<bool>]
> > >> >> #Option "CCEusecTimeout" # <i>
> > >> >> #Option "AGPMode" # <i>
> > >> >> #Option "AGPSize" # <i>
> > >> >> #Option "RingSize" # <i>
> > >> >> #Option "BufferSize" # <i>
> > >> >> #Option "EnablePageFlip" # [<bool>]
> > >> >> #Option "AccelMethod" # <str>
> > >> >> #Option "RenderAccel" # [<bool>]
> > >> >> #Option "NoAccel" "off" #action
> > >> >> #Option "UseFBDev" "on" #action
> > >> >> #Screen 0 #action
> > >> >> #Option "ForcePCIMode" "True" #not used re manpage but in autogen
> > >> >> #Option "Display" "CRT" #not used re r128 manpage but x.org disagree
> > >> >> Identifier "Card0"
> > >> >> Driver "r128"
> > >> >> BusID "PCI:0:16:0"
> > >> >> EndSection
> > >> >>
> > >> >>
> > >> >> Section "Screen"
> > >> >> Identifier "Screen0"
> > >> >> Device "Card0"
> > >> >> Monitor "Monitor0"
> > >> >> Option "DPMS"
> > >> >>
> > >> >> DefaultDepth 24
> > >> >>
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 1
> > >> >> EndSubSection
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 4
> > >> >> EndSubSection
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 8
> > >> >> EndSubSection
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 15
> > >> >> EndSubSection
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 16
> > >> >> EndSubSection
> > >> >> SubSection "Display"
> > >> >> Viewport 0 0
> > >> >> Depth 24
> > >> >> EndSubSection
> > >> >> EndSection
> > >> >>
> > >> >> Section "DRI"
> > >> >> Mode 0666
> > >> >> EndSection
Home |
Main Index |
Thread Index |
Old Index