This is the way I found to do it. Replace an empty Pokemon spot (like the ones after Celebi) with the 64x64 mugshot that you want to use. Then use the command "showpokepic 0x____ (hex number of the pokemon's spot) " followed by its x and y coordinates, ex: 0x14 0x3. Making the y coordinate 3 will make the picture show up just above the textbox, while the x coordinate can go from 0-14. Then have your typical msgbox, and add the command hidepokepic after the text closes. You can then show another pic and another msgbox if you have more than one person talking.
Let me know if I missed something or it doesn't work. You can look at the old man's script in the S.S. Anne in FireRed who shows you the Snorlax for reference if I didn't remember the command line correctly.
I don't know if the pokemon's cries accompany the pictures in Ruby like they do in FireRed. If they do, you'll unfortunately hear Unknown's cries if you use the empty spots after Celebi. I've recently asked if there's a simple way to mute them or take them out, but no one has responded to my post.