Openfirmware Little + Big Endian

Hello,
I was reading a article about OpenFirmware ( this one in particlular), and it sayed you can use the command-line tool nvram to look and change the properties of OpenFirmware. When I typed in nvram -p, I got this:
fcode-debug? false
skip-netboot? false
prev-lang:kbd en:0
load-base 0x800000
logger-base -1
default-router-ip
scroll-lock true
oem-logo
boot-screen screen
default-server-ip
default-gateway-ip
security-#badlogins 2
diag-switch? false
oem-banner
default-subnet-mask
output-device screen
use-generic? false
logger-size -1
diag-file ,diags
screen-#rows 40
oem-logo? false
diag-device enet
default-client-ip
default-mac-address? false
little-endian? false
aapl,tdm-units
mouse-device mouse
input-device keyboard
virt-base -1
boot-script
auto-boot? true
selftest-#megs 0
boot-args
real-base -1
ram-size 0x20000000
use-nvramrc? false
real-size -1
virt-size -1
boot-file
console-screen screen
boot-volume 3
input-device-1 /ipc
real-mode? false
nvramrc
gmt-offset 0
security-mode none
boot-device pci2/ata-6@D/@0:3,\\:tbxi
output-device-1 /ipc
pci-probe-mask -1
oem-banner? false
screen-#columns 100
boot-command mac-boot
What on earth is little endian doing there? I know that little endian means x86 (Intel, AMD, etc.), and big endian means PowerPC (IBM). What would happen if you turned it to true? This video shows you what little & big endian means. (from Apple) I'm kinda interested in this if x86 was there for years.

MacMini G4 1.25 GHz 512 RAM, Mac OS X (10.4.2), Mac OS X (10.3.9) Dual-Boot

Posted on Dec 23, 2005 10:51 AM

Reply
4 replies

Dec 23, 2005 7:21 PM in response to Finlay

I didn't actually say that there had ever been a little-endian PPC processor, just that Apple have maintained little-endian versions of the OS (and associated parts) and therefore it makes sense that there is some low-level support for controlling the way the system works.

Just as an aside, the PPC chip has support for both models. According to:

http://developer.apple.com/documentation/Hardware/DeviceManagers/pcisrvcs/pci_cards_drivers/PCIBOOK.250.html

The PowerPC microprocessor supports a little-endian processing mode, in which addresses are swizzled when they are used to access memory.


As that note indicates, it's not a full little-endian support as much as a dynamic flipper that can switch big-endian data into little-endian (and vice versa).

Dec 23, 2005 11:29 AM in response to Craig Cabrey

Apple have stated that Mac OS X has been able to run on little-endian systems for years (right from 10.0). It only makes sense that there's some low-level flag associated with that.

As for what would happen if you change it? I'm guessing not a lot since it's not something that you can reasonably expect to change on the fly. I would expect that something in the system actually sets this during boot based on the architecture rather than relying on some (potentially wrong?) user input.

That said, I might be wrong, and I'm not about to try it on my system 🙂

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Openfirmware Little + Big Endian

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.