Difference between revisions of "PrBoom"

From ArmadeusWiki
Jump to: navigation, search
(Creation)
 
(APF9328 with only 8 MBytes of FLASH)
 
(33 intermediate revisions by 4 users not shown)
Line 5: Line 5:
 
Doom clone derived from original ID Software sources and enhanced (SDL support, bugs correction...). Doom is the sequel of Wolfenstein.
 
Doom clone derived from original ID Software sources and enhanced (SDL support, bugs correction...). Doom is the sequel of Wolfenstein.
 
It is working quite well on 8bpp framebuffers; for 16bpp one, a bug has to be corrected in i.MX framebuffer (ongoing).<br>
 
It is working quite well on 8bpp framebuffers; for 16bpp one, a bug has to be corrected in i.MX framebuffer (ongoing).<br>
PrBoom is integrated in Buildroot on latest SVN snapshots. It needs SDL, SDL_mixer & SDL_net. Currently there is no sound support on Armadeus boards. Video was taken on the new LCD. Runs at full speed in 320x240 with only ~40% CPU usage in 8bpp mode.
+
PrBoom requires SDL, SDL_mixer & SDL_net and runs at full speed in 320x240 with only ~40% CPU usage in 8bpp mode.
  
===Install===
+
==Install==
Launch Buildroot configuration:
+
* Launch Buildroot configuration:
# make menuconfig
+
<pre class="host">
Activate SDL, SDL_mixer, SDL_net and then PrBoom packages. Exit and save your config. Build rootfs:
+
$ make menuconfig
  # make
+
</pre>
As the generated rootfs is too big to be put on the APF9328 FLASH, there are 2 solutions:
+
<pre class="config">
* 1]  put rootfs on a MMC/SD. In Buildroot configure rootfs to be tar-ed '''Target Options  ---> tar the root filesystem''' and then:
+
Target packages  --->
# tar xvf /.../armadeus/buildroot/rootfs.arm_nofpu.tar -C /mnt/sdcard/
+
    ...
# umount /mnt/sdcard/
+
    Games  --->
in U-Boot then use (with MMC inserted):
+
    ...
BIOS> run mmcboot
+
    [*] PrBoom
After Linux boot on Target, launch the game:
+
    [*] shareware Doom WAD file
# /usr/games/prboom -width 320 -height 240
+
</pre>
* 2]  put games files on NFS export: ''armadeus/buildroot/build_arm_nofpu/root/usr/games/prboom'', ''armadeus/buildroot/build_arm_nofpu/root/usr/share/games/doom/prboom.wad'' and ''doom1.wad''.!! Files should be in the same directory !! Then cd in directory and launch the game:
+
 
  # /usr/games/prboom -width 320 -height 240
+
Activate PrBoom package and "shareware Doom WAD file" (it will autoselect SDL, SDL_mixer and SDL_net). Then, exit and save your config. Re-Build your rootfs:
 +
<pre class="host">
 +
  $ make
 +
</pre>
 +
 
 +
===APF9328 with only 8 MBytes of FLASH===
 +
As the generated rootfs is too big to be put on the 8MBytes APF9328 FLASH, there are 2 solutions:
 +
# [[MultiMediaCard#Booting_from_MMC.2FSD | put rootfs on a MMC/SD and boot it]]
 +
# [[Network_Configuration#Boot_from_NFS | boot your board from your NFS export]]
 +
 
 +
''armadeus/buildroot/build_armv4t/root/usr/games/prboom'', ''armadeus/buildroot/project_build_armv4t/apf9328/root/usr/share/games/doom/prboom.wad'' and ''doom1.wad'' files should be in the same directory !!  
 +
 
 +
Then cd in directory and launch the game:
 +
 
 +
==Launching==
 +
* If you have a 320x240 display:
 +
<pre class=apf>
 +
  # /usr/games/prboom -width 320 -height 240 -nosound &
 +
</pre>
 +
* If you want some sound be sure that [[ALSA]] is running, '''with OSS emulation loaded.'''
 +
* To change screen depth (default 8 bits), ex:
 +
<pre class=apf>
 +
-vidmode 16bit
 +
</pre>
 +
 
 +
==Troubleshots==
 +
*If SDL is complaining because it can't find any mouse (''Unable to init SDL: Unable to open mouse'') then, before launching the game, do:
 +
<pre class=apf>
 +
# export SDL_NOMOUSE=1
 +
</pre>
 +
* APF9328 LCD controller has difficulties to process all data when launching PrBoom in 480x272 mode (random black lines on screen). It's an hardware limitation so no fixes are scheduled.
 +
 
 +
==Links==
 +
* [http://prboom.sourceforge.net/ PrBoom official Website]
 +
 
 +
[[Category:Games]]
 +
[[Category:SDL]]

Latest revision as of 13:33, 26 February 2015

PrBoom

PrBoom
Gametype FPS
Web site http://
Doom.jpg
Fully working
Video http://www.youtube.com/watch?v=256RY8DaoX0

Infos

Doom clone derived from original ID Software sources and enhanced (SDL support, bugs correction...). Doom is the sequel of Wolfenstein. It is working quite well on 8bpp framebuffers; for 16bpp one, a bug has to be corrected in i.MX framebuffer (ongoing).
PrBoom requires SDL, SDL_mixer & SDL_net and runs at full speed in 320x240 with only ~40% CPU usage in 8bpp mode.

Install

  • Launch Buildroot configuration:
$ make menuconfig
Target packages  --->
    ...
    Games  --->
    ...
    [*] PrBoom
    [*] shareware Doom WAD file

Activate PrBoom package and "shareware Doom WAD file" (it will autoselect SDL, SDL_mixer and SDL_net). Then, exit and save your config. Re-Build your rootfs:

 $ make

APF9328 with only 8 MBytes of FLASH

As the generated rootfs is too big to be put on the 8MBytes APF9328 FLASH, there are 2 solutions:

  1. put rootfs on a MMC/SD and boot it
  2. boot your board from your NFS export

armadeus/buildroot/build_armv4t/root/usr/games/prboom, armadeus/buildroot/project_build_armv4t/apf9328/root/usr/share/games/doom/prboom.wad and doom1.wad files should be in the same directory !!

Then cd in directory and launch the game:

Launching

  • If you have a 320x240 display:
 # /usr/games/prboom -width 320 -height 240 -nosound &
  • If you want some sound be sure that ALSA is running, with OSS emulation loaded.
  • To change screen depth (default 8 bits), ex:
-vidmode 16bit

Troubleshots

  • If SDL is complaining because it can't find any mouse (Unable to init SDL: Unable to open mouse) then, before launching the game, do:
 # export SDL_NOMOUSE=1
  • APF9328 LCD controller has difficulties to process all data when launching PrBoom in 480x272 mode (random black lines on screen). It's an hardware limitation so no fixes are scheduled.

Links