esp32-doom
MicroPython
esp32-doom | MicroPython | |
---|---|---|
13 | 212 | |
236 | 20,763 | |
8.1% | 1.1% | |
0.0 | 9.9 | |
about 2 years ago | 3 days ago | |
C++ | C | |
- | MIT |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
esp32-doom
-
Doomscroller.xyz
Since it looks to be built on the ESP32 platform, the answer is likely yes (but you'd need a display...) https://github.com/espressif/esp32-doom
I think actually there are a couple of DOOM ports for the platform.
-
M5Stack Cardputer – A $30 card-sized ESP32-S3 computer with display and keyboard
My most pressing question is, can it play Doom?
There seems to be a port for ESP32 [0] and Arduino Nano does play it [1], so maybe?
[0]: https://github.com/espressif/esp32-doom
[1]: https://m5stack.hackster.io/naveenbskumar/yes-arduino-nano-e...
- Doom on CyberPi
-
Just picked these up from sams club, I will try to get Doom running on it
Perhaps try this: https://github.com/espressif/esp32-doom
- Request Tutorial on loading DOOM on ESP32!
-
T-Watch-Keyboard-C3: a device that looks like a miniature PC replica comprised of an ESP32-C3 powered keyboard, and the TTGO T-Watch ESP32 programmable device with a 1.54-inch touchscreen display
should be fine, yeah
-
DOOM! on the #emfcamp TiDAL badge
There is a port of DOOM for an ESP32, proving that it can be done, however I have added additional constraints on myself as follows:
- Update on my WiFi Game Boy cartridge: It can now stream video. (ESP8266)
- hey i am planning to do doom on arduino but my file is not supported, if anyone here knows anything about an arduino compatible doom file please let me know
-
Neil's Technical Review: How I hacked an office telephone to play DOOM
Now all we need for DOOM everywhere is to make the memory management more portable. It's still difficult to port DOOM to microcontrollers like the ESP32 and ARM Cortex-M and RISC-V, which are easily fast enough to run it but which have much less RAM than a 90's PC (128-512K vs 4MB). But they can use external RAM via SPI which is very cheap for 4 or 8 MB, and while that is slower than 90's DRAM because of the serial protocol it should be good enough with a very simple cacheing strategy?
MicroPython
-
Why Lua Beats MicroPython for Serious Embedded Devs
it's not an embeddable runtime like Lua
While it's true you can't have multiple MicroPython interpreters running concurrently (or at least not easily; it's not that the design makes this impossible, it's just that all in all MicroPython is fairly young and development focus has been put elsewhere), it is possible to embed MicroPython. Not completely out of the box, needs some glue code etc. See for example https://github.com/micropython/micropython/tree/master/ports....
- 讓 MicroPython 輸入中文
-
MicroPython on M68k Mac
It's obviously not directly comparable - each port will be different - but startup time is <50ms on an RP2040 (Cortex M0 @133MHz):
https://github.com/micropython/micropython/issues/8420
-
MicroPython v1.25.0
Yes, although MicroPython is focused on running on microcontrollers it can be useful if you want to reduce memory consumption, flash space and even startup time on servers.
The challenge is that MicroPython has many fewer standard libraries:
https://github.com/micropython/micropython/wiki/Standard-Lib...
And so many Python libraries targeting CPython won't work out-of-the box and you'll need to modify them or use alternatives that do work on the MicroPython subset.
- MicroPython – Python for Microcontrollers
- Mruby/C and picoruby: high level langs in low-level devices?
-
Ask HN: What less-popular systems programming language are you using?
I'll link to it because many people don't know a version of Python runs on microcontrollers:
https://micropython.org/
-
Tactility: OS for the ESP32 Microcontroller Family
I'm personally working on something like this for the ESP32, but written on top of micropython [1]. A few things are written in C such as the display driver, but otherwise most things are in micropython. We chose the T-Watch 2020 V3 microphone variant as the platform [2].
Our objective is to build a modern PDA device via a mostly stand-alone watch that can be synced across devices (initially the Linux desktop). We want to achieve tasks that you might typically do on your desktop, focussed towards productivity.
We did consider a custom OS, but decided against it for a few reasons:
1. Allowing somebody else to handle basic OS stuff allows us to concentrate on what really matters, the higher level stuff on top.
2. Having multiple threads in micropython is super simple and we are able to run many active apps at the same time, rather than having to kill them off [3]. Our background apps can continuously interact with the network in the background.
3. Code written for micropython can be easily run on other Python-capable devices.
[1] https://micropython.org/
[2] https://lilygo.cc/products/t-watch-2020-v3
[3] https://tactility.one/#/application-lifecycle
- Release RP2350 and ESP32-C6 support, RISC-V native emitter, common TinyUSB code
-
Wasm2Mpy: Compiling WASM to MicroPython so it can run in Raspberry
tools/mpy_ld.py: https://github.com/micropython/micropython/blob/master/tools...
tools/mpy-tool.py lists opcodes: https://github.com/micropython/micropython/blob/master/tools...
Can the same be done with .pyc files; what are the advantages of MicroPython native modules?
Why does it need wasm2c?
What are some alternatives?
doomgeneric - Easily portable doom
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
doom-nano - A 3d raycast engine for Arduino
Unicorn Engine - Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, PowerPC, RiscV, S390x, TriCore, X86)
st7789_mpy - Fast MicroPython driver for ST7789 display module written in C
IronPython - Implementation of Python 3.x for .NET Framework that is built on top of the Dynamic Language Runtime.