use module_start_func instead of entry_addr if entry_addr is 0

, this fixes Dissidia Final Fantasy 012. Maybe this is not a good fix.
break after find optimum font
use vector instead of Memory read/write

, becasue Memory read/write works incorrectly here...
Merge pull request #846 from oioitff/master

some fixes for fonts and games...