Yet another ESP8266 port of Arduboy2 lib. Specially for ESPboy

Are you planning to make these into kits that you can buy and build yourself?

The project is open source and there are different ways to try ESPboy:

  1. The fastest way is to make it yourself with a breadboard and a few cheap parts from aliexpress or any other electronic parts supplier. No soldering at all.

  2. To solder a more reliable version at 30х70 breadboard using schematic at easyeda

  3. To order at easyeda special ESPboy PCB to solder all parts and avoid multiply wires. It’s possible to order completely or partially soldered device there.

  4. To buy an original partially preassembled kit to get unforgettable DIY experience (you have to solder only 4 parts)

  5. Buy a completely assembled device ready to play.

I believe I could make the page at tindie.com during the next month or two.
Virus problem in China stopped almost all production and logistics (

Another important feature of the project is the online ESPboy firmware update catalog. It’s almost ready. ESP8266 has OTA mode to update the firmware from the web using built-in WiFi.

2 Likes

there is a bug in recompiled games with a smooth scrolling wide world like “Adventure” or “Hello, сommander”
the upper tile-line of the world draws after all 8 pixel height is on the screen.

  1. in “hello, commander” we don’t see smooth appearing of the tile from out of the border of the screen, but we see black till all 8 pix scrolls and it draws all tile of 8 pixels hight at a time

  2. in “Adventure” we see another strange effect at the upper tile-line

any ideas how to fix it? i suppose the problem should be somewhere in sprites.cpp - case SPRITE_MASKED: … or it’s in-game code?


I changed line 83 in sprites.cpp:

from:
uint16_t xOffset, ofs;
to:
int16_t xOffset, ofs;

This cures the clipping of the top 7 pixels, but maybe you should add some extra checks to avoid using negative array indexs.

1 Like

@ hartmann1301 problem fixed. thanks!

Arduboy games successfully ported to ESPboy:

  • Catacombs of the damned (MIT) by James Howard
  • Mystic Balloon (MIT) by TEAM ARG
  • Sirene (MIT) by TEAM ARG
  • Arduventure (MIT) by TEAM ARG
  • CastleBoy (MIT) by jlauener
  • Dark And Under (BSD-3-Clause) by Garage Collective (Cyril Guichard (Luxregina), Simon Holmes (Filmote), Pharap)
  • HelloCommander (MIT) by Felipe Manga (FManga)
  • Blob Attack (MIT) by TEAM ARG
  • Virus-LQP-79 (MIT) by TEAM ARG
  • Kong-II (MIT) by Vampirics and Filmote
  • LodeRunner (all 154 levels in a single game!) (BSD-3) by Simon Holmes (filmote)
  • MicroCity (GPL-3.0) by James Howard
  • SpaceCab (GPL-3.0) by by Stephane C (vampirics) and Simon Holmes (filmote)
  • The Curse Of Astarok (MIT) by Simon Holmes (filmote)
  • Rayne the rogue (MIT) by shdwwzrd
  • Squario (Proprietary) Squario by arduboychris
  • Circuit Dude (Proprietary) by Jonathan Holmes
  • Omega Horizon (Proprietary) by shdwwzrd
2 Likes

I double-checked, Rayne the Rogue is actually ‘MIT’ according to the GitHub repo.

Unfortunately Omega Horizon is definitely proprietary,
which is a bit disappointing.

1 Like

More Arduboy games successfully ported to ESPboy:

  • Space Battle - Trench Run (MIT) by Lucas Cardinali (lscardinali)
  • MicroTD (CC0-1.0) by drummyfish
  • Shadow-Runner-1.6.1 (MIT) by TEAM ARG
  • Evade (MIT) by Modus Create
  • Rooftop Rescue (MIT) by Bert van’t Veer
  • JetPac (Proprietary) by Mike McRoberts
  • Crates 3D (MIT) by Badja (original) & Brian (port)
  • Tamaguino AB (GPL-3.0) by Alojz Jakob (Port by KeyboardCamper)
1 Like

More Arduboy games successfully ported:

Man, its really coming along.

1 Like

More Arduboy games successfully ported

More Arduboy games successfully ported:

It’s actually MIT, but the licence icon doesn’t show up properly on GitHub because the licence file was edited in such a way that GitHub doesn’t recognise it:


The message about:

You are free to distribute the complete game to anyone, as long as you:

  • do not alter it in any way.
  • include a credit to Matt Greer and preferably a link to this repo
  • do not charge money for it

Actually contradicts what the MIT licence says,
but the MIT licence most likely overrules it, so that’s probably not an issue.
(I’m not a lawyer, but I expect most lawyers would say that the licence notice trumps a few non-legalese statements.)

1 Like

ESPboyPlaytune multichannel sound synthesis library for ESP8266 / ESPboy done

Improved port of the ArduboyPlaytune library modified to work well with the ESP8266 and ESPboy project

It supports up to 8 channels simultaneously, the last channel used for non interruptable melody additional tone.

Is planning to be used for porting Arduboy games to ESPboy with tunes and sound )

by Shiru: shiru@mail.ru

1 Like

It’s really amazing that you have completed this great design and turned the display to a color display.
Have you thought of creating a game loader for this, similar to the flash-Cart using the on-board 4Mb SPI Flash Ram ?

1 Like

thanks ) i’m working on the online app catalog, making possible to OTA upload the firmware using wifi connection directly from the ESPboy

2 Likes

@ESPboy, I have downloaded your ESPBoy Adruboy2 library, and tried to compile it.
However, I got the following compilation error for all the game from your github link for ESPBoy Arduboy2, e.g. “galaxion”

Users/cheungbx/Library/Arduino15/packages/esp8266/hardware/esp8266/2.6.3/libraries/ESP8266WiFi/src/CertStoreBearSSL.h:40:23: error: ‘FS’ has not been declared.

I was able to bypass this by removing the following line in arduboy2core.h
#include <ESP8266WiFi.h>
and the associated codes in arduboy2core.cpp that turns off the WIFI on ESP8266.’
Then the games will be able to run successfully.

I have tried to verify whether my ESP8266 core libraries are fine by compiling a WIFI program I wrote for ESP8266 using the same #include <ESP8266WiFi.h>. There were no compilation error. Hence it proves that my ESP8266 core libraries are fine.

Appreciate any idea to fix this problem.

I am using the latest version of Arduino 1.8.12 on my MAC OSX 10.14.6.
And I refreshed my ESP8266 board manager to 2.6.3 from this board manager url
http://arduino.esp8266.com/stable/package_esp8266com_index.json

That’s where the ESP8266WIFI.h comes from.

Attached is the verbose output of the compilation with the error messages.
error.pdf (126.4 KB)

1 Like

I resolved the issue by downgrading the ESP8266 board package from ver 2.6.3 to 2.5.2. It seems there are changes starting from ver 2.6.0 that caused this problem. The Include FS.h have been introduced starting from 2.6.0. and changes in associated code to use the FS.h as file handler instead of a local variable in the previous version of 2.5.2.
I am not technical enough to find out why this will only fail when included from the Arduboy2.h library, yet it will work if you include in from your main program.
May be something to do with the namespace defined in FS.h, that is not accessible when referenced from Arduboy2.h.

1 Like

ESPboy App Store” done. It’s free, online, and works fine directly from the device. To get access first-time use https://github.com/ESPboy-edu/ESPboy_OTA
Connect to WiFi, chose any firmware, and upload the application or game in a minute without any wires, IDE’s, libraries, compilations, fighting errors, and bugs, etc. The same simple way as you get the new app with your smartphone.

The OTA is embedded into the ESPboy port of Arduboy2 lib thus getting access to the online app catalog from the compiled Arduboy game and making possible to download and run any app anytime using WiFi connection.

There are just a few Arduboy and LGE games available in this store now. But it’s just the beginning.

2 Likes

GameBoy games are also available at ESPboy now
even Zelda, looking similar to Arduventure )

1 Like