linguini1 opened a new pull request, #3573:
URL: https://github.com/apache/nuttx-apps/pull/3573

   ## Summary
   
   This commit includes a (highly) modified version of Chocolate DOOM which can 
run on NuttX. The majority of the modifications were made to pass the NuttX 
style check. Some small modifications have been added to support keyboard 
input, render graphics to frame buffers and directly use the POSIX interfaces 
NuttX supplies, stripping out Windows/Mac stuff and any references to SDL.
   
   **NOTE:** Sound is currently not supported in any capacity, nor is the 
networking stuff. A lot of Chocolate DOOM code was stripped out since it was 
unused. If there is a need/desire to add it back later, the original Chocolate 
DOOM source can be used as a reference.
   
   **WARNING:** The NuttX keyboard codec is incredibly non-standard and so 
there are problems translating from X11 keys to NuttX ones to play DOOM. Right 
now, the CTRL key for firing doesn't work because the NuttX codec has no 
concept of it. The NuttX codec should be modified (and other input devices 
supported), but at the time of this port I am not sufficiently comfortable 
doing so since I am afraid of breaking other things in the kernel.
   
   **NOTE:** This port (and likely the original DOOM) seems to be written with 
32-bit computers in mind. As such, most things are given the type of natural 
`int`, even when a single byte might do. There are significant size 
optimizations that could be made to make this more suited to embedded devices 
that NuttX typically runs on.
   
   This is part of my GSoC proposal; the final milestone of adding some cool 
user demos: https://github.com/apache/nuttx/issues/18507
   
   The twin PR to the kernel containing a defconfig for playing NXDoom on sim 
and documenting the port is available here: 
   
   ## Impact
   
   Play DOOM on NuttX!
   
   ## Testing
   
   Played on NuttX simulator:
   
   <img width="2181" height="1686" alt="doom-on-sim" 
src="https://github.com/user-attachments/assets/e1d30498-34e2-4f65-866d-c891a61d059b";
 />


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to