Your idea sounds pretty good, unfortunately, if you use Delphi you won't get Linux or Mac support. Look into SDL and FPC/Lazarus, then you can get Linux and Mac quite easily