Some x86 assembler code, and a tiny bit of C compiled into a DLL for what exactly BasicBoy?

The assembler code was for 'fake-mapping' a bitmap image to a sphere (as used in the'A Maze In Sphere' subgame) or a cylinder (as used in 'Treasure Tower' subgame).

BBC Basic (being an interpreted language) just isn't fast enough to do this at an acceptable speed.

Some C code was used for the 'Amazeballs' subgame for collision detection, and also to determinewhich objects in the 3D world are currently visible in the player's viewport. This could probablyhave been done in Basic, but it needed to be fast and I didn't have time to devise any clever codingtricks, so I just cobbled together some C code -- job done!

The x86 Asm code for 'Treasure Tower' is included below for the curious.

I prototyped in both monkey and Bmax using different frameworks and libs looking to get a jump start. Eventually I went with Bmax and make my own framework because I'm most productive in it. In hindsight I probably should have picked something I wasn't so familiar with (unity or monogame) to make it also more of a learning experience. Although this is the first time I've done a lot of glsl shader programming. I composed all the songs myself using a tool written in blitzmax.

MineBlast was written using Monkey2. All graphics were done by me in Pyxel Edit except for the explosion which I grabbed from an asset pack I had purchased from TheGameCreators.com. Sound effects were also from an asset pack from TheGameCreators. Music is from www.soundimage.org by Eric Matyas.