Falling Blocks Watch Out 3DS

From GameBrew

Falling Blocks Watch Out
Last Updated2016/03/06
LicenseCC-BY 3.0

Falling Blocks Watch Out is a 3DS homebrew Tetris clone. The aim was to create a homebrew game inspired by Tetris DS, seeing as it was one of the best Tetris installments on handhelds, without all the fanciness new games bring.


  • SRS (Super Rotation System) - Which should allow 20G to still let the player play. Based on Tetris Guideline.
  • ARS - When using ARS, soft drop will have no lock delay, so be careful.
  • Bag-style Random Generator - sequence of all the 7 blocks is shuffled, then put into play, so no more than 4 Z/S in a row will occur, therefore unlimited play is possible.
  • Marathon mode - Limited to 20 levels (hardcoded, sorry, but be reasonable) with 10 line increments (by default).
  • High score support - Keeps the high score for the current configuration. If the configuration is different in current game than in the one with that high score, it will be set to 0.
  • Many variables to tweak - As of now, only in a text file. But, the number of variables is another topic in itself.
  • Theme support - No support for theme per level though, only one for the entire duration.
  • Music support - In ogg format. Put your music.ogg in your theme folder and enjoy it.


Unpack the archive on your SD card. fbwodata folder must be on the root, and of course .3dsx in /3ds/fbwo/.

And CIA can be installed from anywhere.

User guide


Settings can be edited in the configuration file (config.cfg). If any of these settings is not present in the file, a default value (hardcoded) will be used instead.

  • level [1-20] [number1] [number2] [number3]:
    • [1-20] is affected level.
    • [number1] is how many frames the game waits for a next drop.
    • [number2] means how many lines the block is dropped in one take.
    • [number3] is glue delay (in frames, how long the game waits for the block to lock in place after reaching bottom)
  • DAS [number] - Delayed Auto Shift - how many frames the game waits from pressing a directional button to moving the block automatically.
  • DAS_speed [number] - How many frames does the game wait until moving the block again after initial DAS delay. i.e. with default values:
    • frame 0 - player presses right, block moves right once;
    • frame 11 - still pressed, block moves right again;
    • frame 17 - still pressed, block moves; frame 23 - again...
  • invisimode [0/1] - Toggles rendering of the blocks on the grid. For people who like challenges, you can turn it off.
  • hold [0/1] - Enables HOLD functionality.
  • ghost_piece [0/1] - Enables displaying of the ghost piece.
  • next_displayed [0-6] - Number of NEXT pieces displayed.
  • line_clear_frms [number] - How many frames line clear animation lasts.
  • level [1-20] - Level you start with.
  • lines_per_lvl [number] - Lines the player needs to clear before advancing to the next level.
  • ars [0/1] - Switches between SRS (0) and ARS (1).
  • are_delay - ARE delay in frames (time between a block locking and spawning the new one).
  • theme [name] - Name of the folder with your theme.

Theme settings

In the theme folder, theme.cfg file contains the configuration of the theme/positions of the elements.

These should be pretty straightforward - texture, then x and y coordinates (0,0 is in top left of the screen, and the coordinates show the top left pixel of the texture). Worth noting are:

  • offset_next/offset_hold - Set tetrimino position, relatively to the frames.
  • lines_dig_off/level_dig_off - Set y position of the digits for level/lines counters, relatively to them.


D-Pad Left/Right - Move the block left/right

D-Pad Down - Soft drop (not limited in speed though, like in Tetris DS, be careful)

D-Pad Up - Hard drop

A/B - Rotate the block clockwise/counterclockwise

L - Hold (if enabled)

R - Boost DAS (the game will act as if both DAS values were halved)

Start - Pause, Exit (when gameover)

Select - Exit, Restart game (when gameover)


fbwo3ds3.png fbwo3ds4.png



  • A quick update adding per-level glue delay.
  • Be careful, the config file is different from the previous one.


  • The 0.4 version brings the long awaited music support. But only music, as of now. No SFX. But it's in .ogg. You can put your own music.ogg if you don't like the one provided.
  • Also, few bugfixes, mostly with T-Spin detection.
  • To play the music, you need your DSP firmware dumped. You need to do it only once. FBWO should work OK after that.


  • Added T-spin recognition.
  • Added indicators.
  • Bugfixes.


  • Added ARS (TGM rotation system), along with ARE.
  • Added config variable to swap L/R buttons.


  • First release of Falling Blocks Watch Out.
  • Includes a sample configuration and theme.


  • smealum for ctrulib.
  • xerpi for sf2dlib and sfillib.
  • gbatemp.net for being helpful.
  • Rozpierog for GameBoy! theme added with this release.
  • traktorex for CIA banner jingle music.
  • Rinnegatamante for DSP firmware dumper and help.

External links