Yea, there's nothing wrong at all. You just weren't reading the results correctly. And the seed doesn't matter on Emerald. It's always the same from the start of the game with a steady frame advancement of 60fps.
I'm glad I could help you figure it out. Anyways, its 3:30 am here, so I'm going to bed. Good luck with your captures!
oh man! I just realized why you're confused!!! Ignore the seed and frame in the parenthesis!! Emerald's RNG works a little different. The very first number in the results is your frame.
In this case it is: 7380377F
The F stands for Frame. That's why I said that the game gave you a poke in the 7 million+ range. The Deoxys you listed was caught on frame 7,380,377.
I don't think it's the ROM. It seems to be advancing correctly because it gave you a pokemon at 7million+ frames. It seems to be a PokeRNG issue becuase your problem is frame calculation. You should be using version 1.01 of the program. I don't know what else to tell you.
I can try to run it through PokeRNG. What are the nature and exact IVs?
Does it give you the same result even if you advance the frame in the game? try this:
1. pause the emulator and save the state
2. unpause and immediately catch deoxys
3. get frame from PokeRNG
4. pause emulator again and reload state
5. advance frame by using ctrl + N
6. unpause and catch deoxys again
7. get frame from PokeRNG again
did the frame that PokeRNG spit out change by the number of ctrl+N advances or did it stay the same?