After lot of try and fail I came up with an idea that fixed without any issues the problem of the previews, since the GameInfo module only will handle 1 specific game info at a time, I modified the "GameInfoDialogCreate()" with 3 new parameters "BurnDrvGetText(DRV_NAME), BurnDrvGetText(DRV_PARENT), BurnDrvGetText(DRV_BOARDROM)" and when those values are handled in GameInfo module are passed to global variables located statically in there, that way there is no way that previews or images from another game are displayed.
BUT this way is wrong because UpdatePreview() must be consolidated and this fix complicate that matter as well. So its a dirty fix for now.
Im trying to consolidate the function but what makes it difficult is the Timer feature in sel.cpp not used in gameinfo.cpp...Im thinking on adding the Timer for alternate images (Ex. 19xx-p01.png) in gameinfo.cpp as well to make it easier to consolidate the UpdatePreview() function.
SeeYaa!