Author Topic: Mac OS 9 booting on: Mac mini G4 (Detailed Posts)  (Read 536518 times)

Offline ELN

  • Gold Member
  • *****
  • Posts: 295
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #140 on: January 21, 2018, 11:57:42 PM »
Ta-da!

Things that need to be disabled:
  • PMU
  • USB
  • Extensions (not sure which ones)

Offline mrhappy

  • Platinum Member
  • *****
  • Posts: 1152
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #141 on: January 22, 2018, 12:31:33 AM »
Drum roll please!!!!! ;D

Offline ELN

  • Gold Member
  • *****
  • Posts: 295
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #142 on: January 22, 2018, 04:22:15 AM »
Would somebody (looking at you nanopico) please post on how the mini's USB controller differs from a supported G4?

Offline ELN

  • Gold Member
  • *****
  • Posts: 295
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #143 on: January 22, 2018, 04:40:19 AM »
By the way, here's a tbxi. It has too many ugly hacks to count. The one I am proudest of is the binary patch to the NativePowerMgrLib. Close second is the logging code that you will see spamming the NK log as the progress bar moves.

To start from this ROM, you must first copy the 'boot 3' resource inside into your System suitcase. Then you should empty your Extensions folder.

No USB, so you can't actually do much. Working on it.

Offline mrhappy

  • Platinum Member
  • *****
  • Posts: 1152
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #144 on: January 22, 2018, 05:48:00 AM »
Than's some 'fancy' work there ELN... AWESOME!!!  ;D

Offline darthnVader

  • Platinum Member
  • *****
  • Posts: 679
  • New Member
Re: Booting Mac Os 9 on Mac Mini.
« Reply #145 on: January 22, 2018, 06:49:36 AM »
By the way, here's a tbxi. It has too many ugly hacks to count. The one I am proudest of is the binary patch to the NativePowerMgrLib. Close second is the logging code that you will see spamming the NK log as the progress bar moves.

To start from this ROM, you must first copy the 'boot 3' resource inside into your System suitcase. Then you should empty your Extensions folder.

No USB, so you can't actually do much. Working on it.

Not sure if my issue is the USB, on PB6,8.

I had considered it, as I'm trying to boot from USB.

If I leave Extensions enabled, things bomb out about a min. or so after the Ethernet loads.

Removing all the extensions doesn't get me any further.

Offline DieHard

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2366
Re: Booting Mac Os 9 on Mac Mini.
« Reply #146 on: January 22, 2018, 07:57:44 AM »
Ta-da!

Things that need to be disabled:
  • PMU
  • USB
  • Extensions (not sure which ones)

Not much shocks me... but this is absolutely crazy :)

While time marches on... 2018 and still progress being made... "priceless"

Offline darthnVader

  • Platinum Member
  • *****
  • Posts: 679
  • New Member
Re: Booting Mac Os 9 on Mac Mini.
« Reply #147 on: January 22, 2018, 10:21:59 AM »
@ELN,

It's USB for me.

I used the Mac OS ROM v9.2.1 that comes on the install CD, rather than the "Generic" or "iBook" ROM.

With all extension disabled I was able to get the progress bar to fully load, but as I'm booting from USB the system couldn't mount the drive, so the Finder never launches.

I assume we likely have the same USB device, here's my IOReg:

Too long to post even in a code box, I'll boot Linux and see what lsusb and lspci return.

Code: [Select]
0001:10:1b.0 USB controller [0c03]: NEC Corporation OHCI USB Controller [1033:0035] (rev 43)
Subsystem: NEC Corporation USB Controller [1033:0035]
Kernel driver in use: ohci-pci
0001:10:1b.1 USB controller [0c03]: NEC Corporation OHCI USB Controller [1033:0035] (rev 43)
Subsystem: NEC Corporation USB Controller [1033:0035]
Kernel driver in use: ohci-pci
0001:10:1b.2 USB controller [0c03]: NEC Corporation uPD72010x USB 2.0 Controller [1033:00e0] (rev 04)
Subsystem: NEC Corporation uPD72010x USB 2.0 Controller [1033:00e0]
Kernel driver in use: ehci-pci

Code: [Select]
Bus 001 Device 002: ID 154b:007a PNY Classic Attache Flash Drive
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x154b PNY
  idProduct          0x007a Classic Attache Flash Drive
  bcdDevice           11.00
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval             255
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval             255

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            4.04
  iManufacturer           3
  iProduct                2
  iSerial                 1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0001 1.1 root hub
  bcdDevice            4.04
  iManufacturer           3
  iProduct                2
  iSerial                 1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0002  1x 2 bytes
        bInterval             255

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0001 1.1 root hub
  bcdDevice            4.04
  iManufacturer           3
  iProduct                2
  iSerial                 1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0002  1x 2 bytes
        bInterval             255

Bus 002 Device 003: ID 05ac:030a Apple, Inc. Internal Trackpad
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x05ac Apple, Inc.
  idProduct          0x030a Internal Trackpad
  bcdDevice            0.06
  iManufacturer           1
  iProduct                2
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               40mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              6
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      35
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1

Bus 002 Device 004: ID 05ac:8205 Apple, Inc. Bluetooth HCI
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        64
  idVendor           0x05ac Apple, Inc.
  idProduct          0x8205 Bluetooth HCI
  bcdDevice           19.65
  iManufacturer           0
  iProduct                0
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          193
    bNumInterfaces          3
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0009  1x 9 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0011  1x 17 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0019  1x 25 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0021  1x 33 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       224 Wireless
      bInterfaceSubClass      1 Radio Frequency
      bInterfaceProtocol      1 Bluetooth
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0031  1x 49 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       254 Application Specific Interface
      bInterfaceSubClass      1 Device Firmware Update
      bInterfaceProtocol      0
      iInterface              0
      Device Firmware Upgrade Interface Descriptor:
        bLength                             7
        bDescriptorType                    33
        bmAttributes                        7
          Will Not Detach
          Manifestation Tolerant
          Upload Supported
          Download Supported
        wDetachTimeout                   5000 milliseconds
        wTransferSize                    1023 bytes

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0001 1.1 root hub
  bcdDevice            4.04
  iManufacturer           3
  iProduct                2
  iSerial                 1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0002  1x 2 bytes
        bInterval             255
« Last Edit: January 22, 2018, 10:35:20 AM by darthnVader »

Offline Daniel

  • Gold Member
  • *****
  • Posts: 300
  • Programmer, Hacker, Thinker
Re: Booting Mac Os 9 on Mac Mini.
« Reply #148 on: January 22, 2018, 11:59:37 AM »
What happens if you use Timbuktu (or any other remote control software)? That might let you do some useful things with a mini

Offline darthnVader

  • Platinum Member
  • *****
  • Posts: 679
  • New Member
Re: Booting Mac Os 9 on Mac Mini.
« Reply #149 on: January 22, 2018, 04:20:51 PM »
Just picked up a iBook G4, seems to have the same CPU as my PowerBook6,8. Likely the same USB, as is a PowerBook6,7.

I tried booting OS 9 from USB, and it has the same issue and the PB.

This time I installed the OS 9 drivers on the disk, before I installed Tiger, but I didn't setup an OS 9 partition, wishing I had, as trying to boot OS 9 from the HD results in the "Happy Mac" but it never finds the System suitcase.

Any way I can fix that?

My boot command:

Code: [Select]
boot hd:10,\System%20Folder\:tbxi

Offline ELN

  • Gold Member
  • *****
  • Posts: 295
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #150 on: January 22, 2018, 05:40:43 PM »
We're mostly focussed on the mini on this thread. It seems to have much more trouble starting than a PowerBook does.

For your PowerBook, I suggest using iMic's "Generic" Mac OS ROM. Copy the boot 3 resource from the ROM I posted into your Mac OS ROM file *and* the System suitcase. Run this OF line to boot:

Code: [Select]
2000000 encode-int " AAPL,debug" property mac-boot
Then let us know what the last log message is before the crash. Is there another thread somewhere that covers the PowerBook?

Offline Daniel

  • Gold Member
  • *****
  • Posts: 300
  • Programmer, Hacker, Thinker
Re: Booting Mac Os 9 on Mac Mini.
« Reply #151 on: January 22, 2018, 05:45:14 PM »
I would suggest trying to set the startup disk with system preferences. I know that tbxis can be loaded from any folder, but I think the System File has to be in a blessed folder. Or maybe you could try moving the system files to the Coreservices OSX folder (after moving BootX somewhere else). That will probably prevent either operating system from booting, but maybe something will work.

Offline nanopico

  • Platinum Member
  • *****
  • Posts: 767
Re: Booting Mac Os 9 on Mac Mini.
« Reply #152 on: January 23, 2018, 02:48:52 PM »
Would somebody (looking at you nanopico) please post on how the mini's USB controller differs from a supported G4?

I'll look, but it really doesn't.
It's the PMU.  It is controlled over USB.
They will be tied together nicely (or not so much).
That is why the both need to be disabled.

PMU99 (supported) is a Mitsubishi M16C/62F microprocessor.  It uses it's own RAM and ROM.  the uPMU in the mini will likely not have the same ROM and thus not the same interface (from a communication/software standpoint) except for very very low level common functions like turn on and turn off. 
Intrepid controls all IO (USB and PMU communication). The USB controller chip and PMU are known for all the supported and other machines.  The communication through Intrepid is obviously slightly different than the straight up Keylargo chip used elsewhere or else the PowerBooks would have much more  functionality.

So details on uPMU and Intrepid are needed.  There is much info availble in the OS X source to help identifiy the difference between Keylargo and Intrepid. I have found nothing directly related to PMU99 or uPMU in the OS X code (it's a lot so it's not exactly fast to go through).  All power IO does appear to be handled by Keylargo or Intrepid.  So those chips definitly have knowledge of communication to the PMU.  Disabling the PMU and USB controller makes intrepid stop using them so it just goes on it's happy little way.

Okay I'm starting to confuse myself.  I'll dig more when I get a chance.
If it ain't broke, don't fix it, or break it so you can fix it!

Offline ELN

  • Gold Member
  • *****
  • Posts: 295
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #153 on: January 26, 2018, 04:33:48 PM »
It seems that my forum post last night did not go through. I got USB working on the mini! The USB controller driver had a dependence on the PMU that I worked around. (All as nanopico predicted!)

Offline mrhappy

  • Platinum Member
  • *****
  • Posts: 1152
  • new to the forums
Re: Booting Mac Os 9 on Mac Mini.
« Reply #154 on: January 26, 2018, 11:04:45 PM »
Hey that's awesome!! ;D

Offline androda

  • Valued Member
  • **
  • Posts: 24
Re: Booting Mac Os 9 on Mac Mini.
« Reply #155 on: January 27, 2018, 01:01:07 PM »
I think I speak for all of us when I say Thank you for all your work on this!  And What Mac OS ROM can we use to try this ourselves, for extension compatibility testing?

What other repercussions are there for disabling the PMU?  Does the PMU control CPU voltage?  Don't want to burn anything out.
My Collection: Sunflower iMac G4, Beige G3 (G4 333) w/USB+FW, G4 Mini 1.33, 2x G3 500 Pismos

Offline nanopico

  • Platinum Member
  • *****
  • Posts: 767
Re: Booting Mac Os 9 on Mac Mini.
« Reply #156 on: January 27, 2018, 02:17:36 PM »
The PMU controls sleep and such.  On the mini it really doesn't do much more than that.
Breaking it away from USB will primarily mean that if it goes to sleep (if it can at all) it will probably not wake up and will be required to hard restart.  The link between USB and PMU is mostly for controlling device sleep status.

So here is the warning.
There is a possibility that it could cause overheating and possible awkward state that may not be easily be rectified.  Primarily from some devices sleep and some not.


If it ain't broke, don't fix it, or break it so you can fix it!

macStuff

  • Guest
Re: Booting Mac Os 9 on Mac Mini.
« Reply #157 on: January 28, 2018, 06:15:00 AM »
congrats on your progress  8)

Offline darthnVader

  • Platinum Member
  • *****
  • Posts: 679
  • New Member
Re: Booting Mac Os 9 on Mac Mini.
« Reply #158 on: January 28, 2018, 12:52:00 PM »
It seems that my forum post last night did not go through. I got USB working on the mini! The USB controller driver had a dependence on the PMU that I worked around. (All as nanopico predicted!)

Well ELN, you going to make us beg ;D

We'd be interest to know how to reproduce your hacks.

Offline ry755

  • Active Member
  • *
  • Posts: 8
  • New Member
Re: Booting Mac Os 9 on Mac Mini.
« Reply #159 on: January 28, 2018, 03:58:47 PM »
By the way, here's a tbxi. It has too many ugly hacks to count. The one I am proudest of is the binary patch to the NativePowerMgrLib. Close second is the logging code that you will see spamming the NK log as the progress bar moves.

To start from this ROM, you must first copy the 'boot 3' resource inside into your System suitcase. Then you should empty your Extensions folder.

No USB, so you can't actually do much. Working on it.

This is great, but how do I use it? It won't boot from it, and when I open it in ResEdit, it says there's no resource fork, and I have to create it! I even tried directly downloading it onto my iBook G3, thinking macOS High Sierra was somehow messing it up.

Do I have to package this up somehow?