Well, I've actually ported Wolfenstein 3D
, Quake 1 and Quake 2
to Pocket PC. First off, they are all in C, so making them work on Pocket PC is relatively straightforward as a C compiler exists for that platform. It was primarily a matter of working around API limitations, and more difficult, optimizations (like converting floating point operations to fixed point, since Pocket PC does not have hardware floating point support).
Obviously since Blackberry is java based, it would require an entire rewrite, which would be no simple task.
Unfortunately, my experimenting
has shown that the Blackberry API (with the possible exception of 4.6) does not provide native access to the display, or a method of writing raw data to a bitmap without the API having to convert every pixel from 32 bit ARGB to RGB 565.
Certainly anything can be accomplished if there is enough RAM, because the blackberry is a Turing-complete computing device. It's purely a matter of performance.