Mac OS 9 Discussion > Development & Programming

Debugging ATI drivers for Mac Mini

(1/4) > >>

ssp3:
What would be the best way to catch what's wrong with last versions of ATI RockHopper drivers from OSX 10.3.9 and up?
MacsBug? The Mini hangs at the moment whet ATI extensions start to load.

To clarify. By last versions I ment these three:

ATY,RockHopper2-1.0.1f75.pef
ATY,RockHopper2-1.0.1f89.pef
ATY,RockHopper2-1.0.1f100.pef

I've made my own drivers for OS9 with them.

FYI. v9 ROM file for Mini contains this one, the only real RockHopper2 driver that works in OS9
ATY,RockHopper2-1.0.1f63.pef

Knezzen:
Hangs as in a total freeze (no mouse movement)?

ssp3:
Yes, total freeze, mouse can't be moved.
At this very moment.

ssp3:
If I look inside the ATI drivers with PEF Viewer, there in one interesting 'Untitled Data Section'. Apparently, it is compressed, but I am not sure what I'm seeing there when I look at it. What is it? FCode? I don't recognize any of the code.
Anyone? Joevt?

1.0.1f100 driver on the left, 1.0.1f63 on the right.

joevt:
Data section is where constants and strings are stored and maybe variables. It's stored in the PEF as a sequence of opcodes and data (the compressed info) which is decompressed when loaded.

Do other binary formats like mach-o not compress their data sections? I think they have a loader section that tells how the other sections are to be loaded (section opcodes?) but I don't think they have opcodes like the PEF data section has.

An ndrv never contains fcode since the Open Firmware environment is long gone by the time the ndrv is loaded.

8 byte numbers like 3ff66666 66666666 where the first 12 bits look different from the remaining 52 bits are probably 64 bit floating-point numbers. The MSB is a sign bit (0 = positive). the next 11 bits are the exponent (3ff = 1 or 0 - I forget which) and the remaining 52 bits are the mantissa.

Many of the strings in the data appear to be device-tree node paths or property names. The device-tree originates from the Open Firmware device tree and Mac OS 9 uses that to build the Name Registry and Mac OS X uses it to build the IO Registry.

Navigation

[0] Message Index

[#] Next page

Go to full version