forked from doomhack/GBADoom
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Enjoy guys
- Loading branch information
Showing
20 changed files
with
94,913 additions
and
117 deletions.
There are no files selected for viewing
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
gbawadutil.exe -in doom1.wad -cfile doom1.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
gbawadutil.exe -in doom2.wad -cfile doom2.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
gbawadutil.exe -in doom.wad -cfile doom.c |
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,60 +1,58 @@ | ||
**GBADoom** | ||
|
||
A port of prBoom to the GBA. The objective of this project is to get full-fat PC Doom running on the GBA. | ||
|
||
|
||
**What's working:** | ||
|
||
- Supports Doom Shareware, Retail, Utimate and Doom2 IWADS. | ||
|
||
- Renderer is largely intact. Z-Depth lighting is gone and there is mip-mapping but it's otherwise complete. | ||
|
||
- Monster behaviour etc is all intact. (I.e sound propagation etc) | ||
|
||
- Framerate is pretty variable. Simple areas run at ~25fps. Complex areas (Eg: E4M2) chug along at about 5 FPS. It's running around the same as the original GBA Doom1 and Doom2 ports. Doom1 Episodes 1-3 are all completely playable. Episode 4 chugs. | ||
|
||
- Sound and music support. | ||
|
||
|
||
**Still to do:** | ||
|
||
- Demo compatability is broken. | ||
|
||
- General optimisation. We're never going to get a perfect 35FPS but I think there is still another 25% left without changing the visual quality/correctness/game behaviour. For reference, the first time I ran a build under the emulator it ran at about 3FPS. | ||
|
||
- Probably a bunch of other stuff that's borked too... | ||
|
||
|
||
**Building:** | ||
## GBADoom SVN | ||
|
||
A slightly modified version of [doomhack](https://github.com/doomhack/GBADoom)'s amazing port of prBoom to the GBA. | ||
 | ||
|
||
**What's different?:** | ||
- The HUD is changed to be identical to the GBA Doom II retail HUD, therefore all HUD elements are no longer using scaling algorithms and contain all the HUD elements. This does make the screen vertical viewing space somewhat smaller, not too sure if this improves framerate or not. | ||
- The MUG head turning on damage is restored. | ||
- The chainsaw sounds no longer overlap. | ||
- **B** is now the fire button, and sprinting/use has been changed to **A**. To match the retail GBA Doom II controls. | ||
|
||
Be sure to check [doomhack's main branch](https://github.com/doomhack/GBADoom) for future engine optimisations and bug fixes. | ||
|
||
## Cheats: | ||
**Chainsaw:** L, UP, UP, LEFT, L, SELECT, SELECT, UP | ||
**God mode:** UP, UP, DOWN, DOWN, LEFT, LEFT, RIGHT, RIGHT | ||
**Ammo & Keys:** L, LEFT, R, RIGHT, SELECT,UP, SELECT, UP | ||
**Ammo:** R, R, SELECT,R, SELECT,UP, UP, LEFT | ||
**No Clipping:** UP, DOWN, LEFT, RIGHT, UP, DOWN, LEFT, RIGHT | ||
**Invincibility:** A, B, L, R, L, R, SELECT, SELECT | ||
**Berserk:** B, B, R, UP, A, A, R, B | ||
**Invisibility:** A, A, SELECT,B, A, SELECT, L, B | ||
**Auto-map:** L, SELECT,R, B, A, R, L, UP | ||
**Lite-Amp Goggles:** DOWN,LEFT, R, LEFT, R, L, L, SELECT | ||
**Exit Level:** LEFT,R, LEFT, L, B, LEFT, RIGHT, A | ||
**Enemy Rockets (Goldeneye):** A, B, L, R, R, L, B, A | ||
|
||
## Building: | ||
Video Tutorial: https://www.youtube.com/watch?v=YbZgZqV6JMk | ||
|
||
To build the GBA version, you will need DevKitArm. The easiest way to get up and running for Windows users is download the installer from here (https://github.com/devkitPro/installer/releases) and install the GBA dev components. | ||
|
||
You will also need GBAWadUtil (https://github.com/doomhack/GbaWadUtil). Windows (x64) users can download the Binary release from the releases page. | ||
You will also need to use GBAWadUtil, included in the "GBAWadUtil\" directory. Alternatively download the latest build from the main source: (https://github.com/doomhack/GbaWadUtil). Windows (x64) users can download the Binary release from the releases page. | ||
|
||
1) Use GBAWadUtil to create a header file with the WAD data. Retail, Ultimate and Doom2 wads have been tested. Plutonia and TNT should work. | ||
1) Download or Clone this GBADoom SVN source code. | ||
Extract the contents to a folder: (Eg: C:\DevKitPro\Projects\GBADoom) | ||
|
||
Copy your IWAD file to a folder (Eg: C:\Temp\Doom\) | ||
Extract the GBAWadUtil archive to a folder (Eg: C:\Temp\GBAWadUtil\) | ||
2) Use GBAWadUtil to create a header file with the WAD data. Retail, Ultimate and Doom2 wads have been tested. Plutonia and TNT should mostly work. | ||
Open a command prompt. | ||
|
||
Type the following: | ||
**GbaWadUtil.exe -in doom.wad -cfile doom.wad.c** | ||
And copy it to the **source\\iwad\\** directory. | ||
Alternatively just run the **build_XXXX.bat** files and it'll create it in the source\iwad\ path. | ||
|
||
C:\Temp\GBAWadUtil\GbaWadUtil.exe -in C:\Temp\Doom\Doom.wad -cfile C:\Temp\Doom\Doom.wad.h | ||
|
||
2) Download or Clone the GBADoom source code. I recommend downloading from the releases page as the latest code may have issues. | ||
|
||
Extract the code to a folder: (Eg: C:\Temp\GBADoom) | ||
|
||
3) Copy the C:\Temp\Doom.wad.h (Generated in step 1) to C:\Temp\GBADoom\source\iwad\doom.wad.h | ||
4) Open C:\Temp\GBADoom\source\doom_iwad.h in text editor or code editor of your choice. | ||
5) Change the first line to #include "iwad/doom.wad.h" | ||
|
||
5) Open a cmd prompt and type the following: | ||
|
||
|
||
cd C:\Temp\GBADoom && make | ||
3) Open C:\DevKitPro\Projects\GBADoom\source\doom_iwad.h in text editor or code editor of your choice. | ||
4) Change the first line to #include "iwad/**yourfile**.c" e.g. | ||
#include "iwad/doom1.c" | ||
#include "iwad/doom.c" | ||
#include "iwad/doom2.c" | ||
#include "iwad/tnt.c" | ||
#include "iwad/plutonia.c" | ||
|
||
5) Run msys2.bat and type **make** | ||
You may need to edit the msys2.bat with notepad and change the path to go to your real "**msys2\msys2_shell.bat**" file within it if it doesn't work. | ||
|
||
7) The project should build GBADoom.gba and GBADoom.elf. It will take about 5 minutes or so. You may see a lot of warning messages on the screen. These are normal. | ||
6) The project should build GBADoom.gba and GBADoom.elf. It will take about 5 minutes or so. You may see a lot of warning messages on the screen. These are normal. | ||
|
||
8) Copy GBADoom.gba (this is the rom file) to your flash cart or run in a emulator. | ||
7) Copy GBADoom.gba (this is the rom file) to your flash cart or run in a emulator. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
set HOME=. | ||
..\..\msys2\msys2_shell.bat | ||
make |
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
Oops, something went wrong.