Hello everyone,
I am working on a hardware-oriented SGI O2 / IP32 simulation-emulation project and I am trying to stay as faithful as possible to the real machine, not just patch around boot loops.
Current state:
I tested two PROMs:
Interesting result:
From my traces, the system is already past the simple PROM stage and sees storage, so I suspect the next real problem is one of these:
What I am trying to do:
Questions:
My goal is not just to “boot somehow,” but to reproduce the real machine behavior as closely as possible.
Thank you very much.
I am working on a hardware-oriented SGI O2 / IP32 simulation-emulation project and I am trying to stay as faithful as possible to the real machine, not just patch around boot loops.
Current state:
- PROM handoff works
- SHDR is detected correctly
- post1 runs
- firmware is copied to RAM at 0x81000000
- firmware execution begins successfully
- storage bridge is visible
- CD-ROM and HDD #1 are both attached and probed
I tested two PROMs:
- ip32prom.rev4.18.bin
- ip32prom.rev4.3.bin
Interesting result:
- rev4.18 tends to get stuck in a firmware loop that looks related to CP0 / TLB / cache / low-level init
- rev4.3 does not end in the same loop; instead it appears to remain in a repeated firmware memory-clear / zeroing routine
From my traces, the system is already past the simple PROM stage and sees storage, so I suspect the next real problem is one of these:
- incomplete CP0 / TLB / MMU behavior
- inaccurate CRIME / MACE interaction
- missing hardware-level expectations during low-level firmware memory initialization
- incorrect assumptions about O2 onboard SCSI / PCI topology behind MACE
What I am trying to do:
- stay on PROM rev4.3
- model the O2 as a real IP32 system
- eventually reach true ARCS boot behavior
- then load sashARCS, fx.ARCS, and finally perform a real IRIX installation path using CD-ROM + HDD #1
Questions:
- On a real O2, during early firmware RAM execution after post1, what hardware blocks are most critical to get right first: CP0/TLB, CRIME memory behavior, MACE PCI bridge behavior, or onboard dual SCSI?
- Are there known PROM rev4.3 behaviors involving long memory-clear loops that usually indicate a missing hardware acknowledgement or MMU/TLB issue?
- Does anyone have notes about which CRIME/MACE registers the O2 PROM depends on most heavily before ARCS media loading begins?
- Are there known differences between rev4.3 and rev4.18 in early firmware behavior that could explain why one falls into a TLB-style loop and the other into a memory-clear loop?
- If anyone has logic traces, register notes, PROM reverse engineering notes, or hardware bring-up observations for early O2 firmware stages, I would be very grateful.
My goal is not just to “boot somehow,” but to reproduce the real machine behavior as closely as possible.
Thank you very much.