My Christmas Gift to MSX Community : Brick Breaker Santa Demo

Page 1/2
| 2

By ericb59

Paragon (1030)

ericb59's picture

14-12-2018, 16:04

Brick Breaker - Santa Demo (2018))

It is a little game demo made to demonstrate the possibilities of the FUSION-C library.
FUSION-C is a C library for MSX / MSX-DOS using SDCC cross compiler, made to help all MSX coders making C games and utilities for MSX.
Enjoy this little Brick Breaker game ! on a real MSX2 !

Brick Breaker - Santa Demo
Format : ROM
Size : 512 K
Mapper : ASCII 8
Compatible : MSX2, 2+, Turbo-R
Graphic mode : Screen 8
Sounds & Music : PSG
Coded in C with FUSION-C + SDCC

Download Brick Breaker - Santa Demo
ROM Version
Disk Version

Game Rules
-"Your christmas gift" is at the end of the level 5
-To pass a level you must touch the Santa with the ball 10 times.
-You have 5 lives in each level.
-Use keyboard keys left and right to move the paddle.
-Use Space Key to continue the game, when necessary.

FUSION-C was made with Fernando Garcia's help (BitVision).
It will be totally free. I will publish it before the end of the year (This year, 2018 !).

Before that, if you are curious enough
you can check the C source code of this little game.
Source code

Login or register to post comments

By Wolverine_nl

Paragon (1140)

Wolverine_nl's picture

14-12-2018, 16:51

I am trying to run it in webmsx but i cannot start using space key or anything. I tried the disk version
I am very curious on the library for SDCC Smile

By ericb59

Paragon (1030)

ericb59's picture

14-12-2018, 17:24

Yeah ! It does not work on WEBMSX !
But it works on OpenMSX, BlueMSX, CocoaMSX ... And real MSX2 ...

I don't know why WEBMSX is making a nervous breakdown with my little game !? Question

By hamlet

Scribe (3406)

hamlet's picture

14-12-2018, 17:47

And it works very well! Thank you, what a funny game, ericb59!

By ren

Paragon (1636)

ren's picture

14-12-2018, 17:51

I'm sure Paulo would be happy to investigate & fix! Smile

By alexito

Hero (645)

alexito's picture

14-12-2018, 20:22

Yes, I beat the game after 2 continues.

Great Arkanoid Clone Game. Eric how long take you finish this Christmas demo game?

Will be interesting to have a look of FUSION-C.


By ericb59

Paragon (1030)

ericb59's picture

14-12-2018, 22:37

@alexito It took me a little more than one week to finish it
Coding in C is really fast. But this is a basic Brick Breaker game, it can be extended much more... It's just a demo.

I still have a little work on Fusion-c documentation before publish it.
Fusion-C Cover all aspects of the MSX/MSX2 with a lot of functions, so no need to know a lot of hardware things to make something... I want something simple and easy to understand.
Fusion-c have functions for:
- MSX1 Graphics
- MSX2 Graphics.
- VRAM to RAM copy, VRAM to VRAM copy
- Sprites MSX1 mode or MSX2
- PSG Sounds
- MSX DOS 1 & 2 File support
- MSX-DOS 2 Memory mapper
- Playing AYFX sounds FX Libraries
- Playing PT3 musics files
... Print / Input I/O etc ...

By Pencioner

Scribe (1288)

Pencioner's picture

14-12-2018, 22:44

Very nice, thanks, Eric! Looking forward for the library! Face

By DamnedAngel

Master (199)

DamnedAngel's picture

15-12-2018, 10:19

Hi Eric!
Nice job! I am looking foward to take a look into the docs for fusion-c once you make it available!

While playing Brick Breaker in openMSX, however, I received the infamous

The running MSX software has set unsafe PSG port directions.
Real (older) MSX machines can get damaged by this.

I con't specify the exact scenario, but it happened just after i tried to see if space had a function in the game.

Maybe it is worth to find out what's happening...

Thanks for the gift!

By ericb59

Paragon (1030)

ericb59's picture

16-12-2018, 17:28

@damnedAngel I see this warning One time while developping the game... and never before.
I have no clue about this ...

By Pencioner

Scribe (1288)

Pencioner's picture

16-12-2018, 17:51

From the MSX Red book:

Register 7

       7     6     5     4     3     2     1     0
    ¦Port ¦Port ¦  C  ¦  B  ¦  A  ¦  C  ¦  B  ¦  A  ¦
    ¦B Dir¦A Dir¦Noise¦Noise¦Noise¦Tone ¦Tone ¦Tone ¦
Figure 27

    This register enables or disables the Tone Generator and
Noise Generator for each of the three channels: 0=Enable
1=Disable. It also controls the direction of interface ports A
and B, to which the joysticks and cassette are attached:
0=Input, 1=Output. Register 7 must always contain 10xxxxxx or
possible damage could result to the PSG, there are active
devices connected to its I/O pins. The BASIC "SOUND" statement
will force these bits to the correct value for Register 7 but
there is no protection at the machine code level.

I hope this will help you, Eric, to check and fix that PSG warning. Not all of computers will get hardware damage, but there were some broken machines because of that in the past, see this topic, for example

Page 1/2
| 2