The Last Mission SDL Remake for Native OS and Dingux
Hi, everybody! Here's my replica of the classic game The Last Mission. The graphics now is redrawn in 256 color palette, the sound is adlib-emulation. The sound yet is not completely finished. Anyway, please try and test it.
Description from MobyGames.com:
The Last Mission is a side-view arcade game without scrolling (viewpoint moves from screen to screen) with map of big dimensions. The game takes its inspiration from games such as Underwurlde and Starquake.
You control a tank-like robot which can be divided in two: you rotate caterpillar and head-canyon, and the head part can fly off on its own. However,the head can only survive separately for a short amount of time, and your restart position is dictated by the location of the body, even if the head has moved forward through further screens. Therefore, the difficulty of the game was in making it possible to advance with the assembled robot's two parts.
Download version 0.6 (sources, dingux, dingoo OS, dos32, windows and linux binaries): last-mission-0.6.zip - 0.61MB
Mirror on OpenHandhelds: last-mission-0.6.zip - 0.61MB
For Dingoo A320 use:
D-PAD - move
A/B/X/Y - fire
START - start game or pause
SELECT - quit
L - toggle fullscreen upscale: no/coarse/bilinear
R - toggle frameskip: 0/1
QUESTION: While porting this game I've encountered the following problem. Sources contain a lot of pointer arythmetic and pointer casting whila accessing data at arbitrary addresses. When simple bytes are addressed, everything works, but if casting to int or short, Dingoo hangs. As far as I understand, this occurs when reading non-aligned ints and MIPS architecture doesn't like it. So, is there any solution to this? For now sources are patched in an ugly form but work.
Post updated 18 March 2012