FS#6519 - Doom for Gigabeat

Attached to Project: Rockbox
Opened by Alex Gerchanovsky (shoora) - Tuesday, 09 January 2007, 05:20 GMT
Task Type Patches
Category Plugins
Status Closed
Assigned To Karl Kurbjun (kkurbjun)
Operating System All players
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


1. Screen rotated on 90 degrees.
2. Scale 1:1. Letterbox ;-)
3. Changed keypad layout:
Power -> select menu item
Menu - > Menu
Vol Up - > strafe
Vol Dn -> Next weapon
A - > open
4. Menu item "Play" moved in first position.

Due to plugin size limitation I can not compile version with screen stretched vertically (horizontally). This is because of extra code for scaling generated when SCREENHEIGHT!=200.
I was triyng to decrease sode size moving tables into const section. But it did not help that much. May be different version of compiler or some compiler optimizations may help. I don't know...
Alternatevelly, I made tons of changes to make engine independent from resolution. It works on simulatior but not on the device. I suspect that's bacause of 64K limit on something. But I decided to keep these changes any way.
This task depends upon

Closed by  Karl Kurbjun (kkurbjun)
Wednesday, 17 January 2007, 18:57 GMT
Reason for closing:  Accepted
Additional comments about closing:  My patch posted here didn\'t work anyway, but gigabeat is now in svn
Comment by Karl Kurbjun (kkurbjun) - Monday, 15 January 2007, 20:31 GMT
Here is my patch. I have tested this on the player and it currently works.

Alex, your patch introduces changes that I worked hard to get included from prboom (rendering the screen at the player's native depth rather then a fixed resolution). Please feel free though to make suggestions or changes to this patch as a starting point. I just don't want the rendering to be changed in the manner that you did.

My patch is not ready for commit yet as it will break all other players at the moment, hopefully later tonight I'll have some time to fix the last remaining problems.

The main problem with running doom currently on the gigabeat is it seems the user timer is not functioning correctly. Right now this patch uses the timing code for the simulator.
   doom.diff (19.9 KiB)