-
-
Notifications
You must be signed in to change notification settings - Fork 19
Feat/doom #101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Feat/doom #101
Changes from 32 commits
Commits
Show all changes
39 commits
Select commit
Hold shift + click to select a range
68ee3d7
wip doom
finger563 ba77ff3
wip
finger563 bb2c089
add doom which compiles
finger563 dd39274
fleshing out
finger563 5f13861
wip audio video
finger563 59a17a0
working gfx display
finger563 56c3345
fix inputs
finger563 9f0274c
wip moving doom over to shared memory
finger563 a648fe0
wip moving more into shared memory
finger563 6025ac2
add boxart
finger563 5a72c8f
add doom ultimate boxart
finger563 c2e506d
update to latest tool
finger563 1f4d965
continue moving doom to shared memory
finger563 1a5fb84
move more into shared memory
finger563 0ac9b42
wip
finger563 13c833d
reduce sd card overhead and allow palette access.
finger563 40e40c3
abort if error
finger563 d9e0cd1
WIP shared memory actually working again
finger563 d80bc52
fix sizeof issue
finger563 e673647
more WIP and working shared memory
finger563 7f7d9d3
increase shared memory again
finger563 350da33
enable doom
finger563 9d5c714
moving more and more into shared memory
finger563 d2fa01e
move lcd struct and bgdup into shared memory for gbc
finger563 a9dce59
fix gbc
finger563 7509cc1
update to better work across multiple emulators
finger563 61c814b
fix ppu issue with palette
finger563 231ce43
ensure doom cart frees memory
finger563 d6d6b8b
bump shared memory back to 150k for Genesis emulator
finger563 9a655da
145k for shared memory
finger563 a33b854
wip using pool allocator for better memory performance accross emulat…
finger563 28ef4f6
update log
finger563 0cb1b48
update readme
finger563 8938a75
update espp
finger563 e7e4c06
ignore prboom in sa
finger563 74e7b4d
fix audio memset issue
finger563 5b9ae33
fix sound emulation in doom; update to pause sound when doom is pause…
finger563 7a41159
better reliability and working save/load game in box-emu menu
finger563 ca66ce1
update readme and improve sound a little; also make it so the game sa…
finger563 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or 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,2 +1,2 @@ | ||
| #!/bin/bash | ||
| find . -maxdepth 1 -iname "*.jpg" | xargs -L1 -I{} convert -resize 100x "{}" ../"{}" | ||
| find . -maxdepth 1 -iname "*.jpg" | xargs -L1 -I{} magick -quiet "{}" -resize 100x ../"{}" |
This file contains hidden or 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 |
|---|---|---|
|
|
@@ -30,4 +30,5 @@ idf_component_register( | |
| "statistics" | ||
| "max1704x" | ||
| "esp-box" | ||
| "pool_allocator" | ||
| ) | ||
This file contains hidden or 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 hidden or 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 hidden or 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,15 @@ | ||
| idf_component_register( | ||
| INCLUDE_DIRS "include" | ||
| SRC_DIRS "src" "prboom" | ||
| PRIV_INCLUDE_DIRS "." "prboom" | ||
| REQUIRES box-emu shared_memory | ||
| ) | ||
| target_compile_options(${COMPONENT_LIB} PRIVATE | ||
| -Wno-error=address | ||
| -Wno-misleading-indentation | ||
| -Wno-format-overflow | ||
| -Wno-char-subscripts | ||
| -Wno-missing-field-initializers | ||
| -DHAVE_CONFIG_H | ||
| -O2 | ||
| ) |
Binary file not shown.
Binary file not shown.
This file contains hidden or 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,14 @@ | ||
| #pragma once | ||
|
|
||
| #include <span> | ||
| #include <string> | ||
| #include <string_view> | ||
| #include <vector> | ||
|
|
||
| void reset_doom(); | ||
| void init_doom(const std::string& rom_filename, uint8_t *romdata, size_t rom_data_size); | ||
| void load_doom(int save_slot); | ||
| void save_doom(int save_slot); | ||
| void run_doom_rom(); | ||
| void deinit_doom(); | ||
| std::span<uint8_t> get_doom_video_buffer(); |
This file contains hidden or 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,8 @@ | ||
| # Move gbc code into IRAM for perforamnce | ||
| [mapping:doom] | ||
| archive: libdoom.a | ||
| entries: | ||
| d_main (noflash_text) | ||
| r_draw (noflash_text) | ||
| g_game (noflash_text) | ||
| m_misc (noflash_text) |
This file contains hidden or 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,163 @@ | ||
| This file is now the amalgamated list of authors, contributors and credits | ||
| for PrBoom. Hopefully by keeping these all in one place, they will remain | ||
| more accurate. | ||
|
|
||
| Doom was originally written by id software; when playing with any id main | ||
| wad file, you can see their list of credits, which includes the list of | ||
| programmers. After some years, they released the source code, to allow | ||
| others to work on improving the game. | ||
|
|
||
| One of the first projects was DosDoom, by Chi Hoang. This was a quick port | ||
| of the released source code, which was for Linux, to DOS. This was then | ||
| picked up by TeamTNT (http://www.teamtnt.com/), who produced Boom, a greatly | ||
| debugged and extended version of Doom. The Boom programmers were Lee | ||
| Killough, Jim Flynn, Rand Phares, Ty Halderman. | ||
|
|
||
| Several projects started working from the Boom source code. One was PrBoom, | ||
| made by Florian Schulze, that ported the code to Windows, added suport for | ||
| higher resolutions and later OpenGL. Another was Marine's Best Friend | ||
| (known as MBF) by Lee Killough, which fixed a lot of Boom bugs and added | ||
| many new game features. Finally, there was LxDoom, a port of Boom to Linux | ||
| by Colin Phipps. | ||
|
|
||
| In October 1999, id Software re-released the Doom source code under the | ||
| GNU General Public License. TeamTNT have also changed to the new license, | ||
| and the other sources mentioned above have all allowed their code to be | ||
| GPLed. So PrBoom is covered by the GPL. | ||
|
|
||
| In May 2000, LxDoom, PrBoom, and a derived port called LSDLDoom, merged into | ||
| one. The current authors of PrBoom are: | ||
|
|
||
| Florian Schulze <florian.schulze@gmx.net> | ||
| Colin Phipps <cph@moria.org.uk> | ||
| Neil Stevens <neil@hakubi.us> - Mac OS X porting | ||
| Andrey Budko <andrey.budko@gmail.com> | ||
| Rob Young (RjY) <rjy@users.sourceforge.net> | ||
|
|
||
| Our thanks go to all the authors of the ports mentioned above, and also the | ||
| following people who contributed code to LxDoom or PrBoom: | ||
|
|
||
| Jess Haas <JessH@lbjhs.net> | ||
| Of LSDLdoom, who merged his project into PrBoom, contributing his SDL code. | ||
|
|
||
| Nicolas Kalkhof <nkalkhof@gmx.net> | ||
| Much work on the OpenGL renderer. | ||
|
|
||
| James "Quasar" Haley <haleyjd@concentric.net> | ||
| Ever willing to talk about source ideas, and has pointed me in the direction of | ||
| a lot of Boom and MBF bugs; also various bits code from his port Eternity have | ||
| been used, such as the BEX enhancements. | ||
|
|
||
| Bob Aman (sporkmonger.com) | ||
| Created the RMUDAnsiTextView class used in the Mac launcher. | ||
|
|
||
| Gady Kozma gady@math.tau.ac.il | ||
| Added hires to the SVGALib version of LxDoom, and other useful patches. | ||
|
|
||
| Dick Leban | ||
| Lots of feedback about portability issues and helping get the network code | ||
| working properly back at v1.3.6. | ||
|
|
||
| Eduardo Casino Almao | ||
| Lots of helpful feedback and suggestions, but more importantly actually getting | ||
| to grips with the code and giving very precise bug reports and patches. | ||
|
|
||
| Joey Hess | ||
| For numerous patches, like the glibc fixes and window manager updates, and | ||
| help with the music. | ||
|
|
||
| Ben Winslow | ||
| Various useful patches, like the colour ENDOOM code. | ||
|
|
||
| Josh Parsons josh@schlick.anu.edu.au | ||
| Sent me the patches to use autoconf for configuring LxDoom. | ||
|
|
||
| Steve Van Devender <stevev@efn.org> | ||
| Found the bug causing slight noise at the start of sounds playing, and other | ||
| patches. | ||
|
|
||
| Barry Mead <bmead15@cox.net> | ||
| Improvements to the mouse code and other odd patches. | ||
|
|
||
| Mattias Kunkel <mattias@kunkel.freeservers.com> | ||
| Made the lxdoom.spec file for creating LxDoom RPMs. | ||
|
|
||
| Vicente Aguilar vicente@hal.dhis.org | ||
| Handy patch for the file handling | ||
|
|
||
| Benjamin L McGee <vuelto@netscape.net> | ||
| Patch fixing the joystick code. | ||
|
|
||
| Chris Young <young1@users.sourceforge.net> | ||
| Patch improving the ENDOOM printing | ||
|
|
||
| Peter Jay Salzman <p@belial.ucdavis.edu> | ||
| Cleanup patches | ||
|
|
||
| Oliver Kraus | ||
| Send bug reports and patches for Solaris/Sparc. | ||
|
|
||
| Paul S Jenner <psj@firstlinux.net> | ||
| Nice patch to make RPM building easier | ||
|
|
||
| Julian <julian@jplan.cjb.net> | ||
| Fixed inline asm for gcc-2.95 (from Eternity) | ||
|
|
||
| Lionel Ulmer <lionel.ulmer@free.fr> | ||
| Patch to fix alignment problems on ARM processors. | ||
|
|
||
| Ville Vuorinen <vv@ydin.org> | ||
| Spotted and helped patch the player spawn bug, as well as helping with some | ||
| Win32 issues. | ||
|
|
||
| Steven Elliot <selliot4@users.sourceforge.net> | ||
| Misc patches. | ||
|
|
||
| Andreas Dehmel <zarquon@t-online.de> | ||
| Spotted & patched a savegame bug. | ||
|
|
||
| Jon Dowland | ||
| Bug reports & fixes, documentation improvements. | ||
|
|
||
| If you have sent in patches and I forgot to list you, I apologise. Please email | ||
| me and I will add you. | ||
|
|
||
| Also, thanks to the following people who have helped in various ways: | ||
|
|
||
| Simon "fraggle" Howard <fraggle@alkali.org> | ||
| More MBF bugs. | ||
|
|
||
| Robert Phipps <rob@phipps.uklinux.net> | ||
| Network game testing, feature suggestions etc. | ||
|
|
||
| Udo Monk | ||
| His port xdoom is very portable, and I referred to his code sometimes for help | ||
| with the X stuff; also his collection of Doom tools (XWadTools) is the | ||
| definitive tools collection for Linux. | ||
|
|
||
| Andre Majorel <amajorel@teaser.fr> | ||
| For Yadex, so I can debug those problematic levels more easily. | ||
|
|
||
| Michael Heasley | ||
| Author of musserver, which helped me first add music support. | ||
|
|
||
| Rafael Reilova | ||
| Helped with the music server program for LxDoom | ||
|
|
||
| Frederic Oghdayan | ||
| For useful feedback on LxDoom v1.0.1, and repeating his bug reports until I | ||
| believed them :-). | ||
|
|
||
| Adam Hegyi <ha211@hszk.bme.hu> | ||
| Prompted me to hunt down those last few demo sync bugs, and provided some useful | ||
| insights and example demos to help. | ||
|
|
||
| Adam Williamson | ||
| Pointing me toward yet another compatibility bug. | ||
|
|
||
| Ingo van Lil | ||
| Another bug spotter. | ||
|
|
||
| Everyone who contributed indirectly to MBF and Boom and Doom; see the | ||
| respective documentation files. | ||
|
|
This file contains hidden or 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,19 @@ | ||
| set(COMPONENT_SRCDIRS ".") | ||
| set(COMPONENT_ADD_INCLUDEDIRS ".") | ||
| set(COMPONENT_REQUIRES "retro-go") | ||
| register_component() | ||
|
|
||
| # The PSRAM cache bug seems responsible for very odd bugs that I spent way too much time | ||
| # trying to debug... In retro-go the fix is disabled because of the huge performance overhead | ||
| # but I guess we'll have to live with it in at least the prboom-go module... | ||
|
|
||
| rg_setup_compile_options( | ||
| -Wno-error=address | ||
| -Wno-misleading-indentation | ||
| -Wno-format-overflow | ||
| -Wno-char-subscripts | ||
| -Wno-missing-field-initializers | ||
| -mfix-esp32-psram-cache-issue | ||
| -DHAVE_CONFIG_H | ||
| -O2 | ||
| ) |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.