How to use channels from a compound texture and connect to use as a normal map?

So I have this compond texture where the channels are split up like the following:
R = specular roughness
G = normal map red channel
B = ambient occlusion
A = normal map green channel

Now I thought this should be simple to just take the G and A channel and plug it in a colorConstant, then for the B channel, plug a floatConstant with a value of 1. This is what I’d do in Photoshop so I can’t see why it’s not working. What am I missing here?
Oh and another issue is that when you create a bump2D node and connect a texture, it connects the alpha slot to the bump2D node. I haven’t thought so much about this before, but why does it do that? How does that work and how can I replicate this with this setup. My alpha channel in my colorConstant is obviously empty…

I’m not sure which 3D package or engine you’re using, but I just did something similar this week in Unity3D with Amplify Shader Editor.

You might want to see if your node editor has a similar node to this one in Amplify called UnpackNormal (archive link). The wiki page has a screenshot of an example of splitting the channels of a packed/compound normal texture.

Normal Maps encode 3D vectors with components that range from [-1, 1] to texture channels that range from [0, 255]. So you have to convert the texture values from [0, 255] back to [-1, 1].