> instead they transposed it so that SNES Y is NES B and SNES B is NES A

That confuses the development process; they likely were using NES controllers during the development of the SNES hardware for some time, before creating a SNES controller. (Similar things can be observed in more modern Nintendo SDKs: before the Wii U GamePad was finalized, for example, the Wii U SDK console unit just exposed a Wiimote extension port, and expected a Wii Classic Controller to be plugged into it. You could then treat this in software—at least for HID purposes—as if it was the GamePad.)

So it was more that for a while they had two face buttons, A and B, and then when they decided to add two more, the A and B buttons got re-labelled "B" and "Y" on the controller and in the SDK. (You can observe many games released early in the SNES lifecycle that were programmed under the assumption of only two face-buttons; these games either leave the "A" and "X" buttons functionless, or just mirror the functions between "X"<->"Y" and "A"<->"B".)

---

As an aside, I like to look at the Nintendo controller bitplane as existing in a sort of "order of complexity" for the development of arcade hardware—which Nintendo has always targeted their platform to alongside home consoles[1].

For example, the first button in the bitplane—0x1—is always "Select". This makes very little sense (hell, what game even uses that button?[2]) until you realize that, in arcade machines, this is the "button" triggered by inserting a coin![3] After that, you get A and B, because some games just need button inputs and nothing more. Then, the directional inputs, because the next level of complexity up is an arcade cabinet with a joystick. And then the rest of the buttons, in an arbitrary order.

In more recent SDKs, you'll sometimes see L and R inserted early on in the bitplane, earlier even than the directional inputs. Why? Because those buttons are for a simpler kind of arcade machine: they're flipper-signals for pinball machines! (I'm kind of surprised Nintendo cares about pinball machines, given that pinball isn't really a thing in Japan and pachinko—which is—doesn't use flippers. My guess at this point is that Nintendo IRD has a tradition of writing quick one-off pinball prototypes to test their hardware.)

---

[1] Nintendo VS., Ultra 64, Triforce, etc. Nintendo loves arcades! Though they seem to get more subdued about this fact over time; their newer arcade platforms are effectively white-labelled embedded-hardware SDKs for third-parties to use, rather than a side-effect of the creation of first-party cabinets.

[2] The Nintendo SRD "lotcheck" and Nintendo QA "burn-in test" ROMs for each console use Select and Start as their only functional buttons. (I would bet that, in the earliest console generations, before they had millions of mass-manufactured controllers laying about, the hardware developers would just have a breadboard with two resistors for Select and Start, with leads going through the 74LS165 and then over to the console. You'd just tap some wires together to simulate a button-press. Note that if all you need is Select, you don't even need the 74LS165; it doesn't matter if you're sending 0x11111111 if the console is only looking for (i & 0x1). You can accomplish that by just sticking wires directly into the console.)

[3] Run any arcade-platform ROM in an emulator; you'll have to press Select to get it going.