TMS RADical WEB, time for some fun


Monday, March 12, 2018

Last week, our team was brainstorming and as usual, lots of interesting and cool ideas come up. Based on these ideas, we have some more exciting technology being worked on now and coming up soon and you’ll learn about it here shortly. But, from time to time, there are also fun ideas that come up during our brainstorm sessions. One such idea was to check if it wouldn’t be possible to port an existing Pascal game to TMS WEB Core and this way, make the game available via our website for playing it directly online. We thought this was not only a good idea but also a perfect validation to see how well our TMS WEB Core performed in enabling Delphi developers to move existing code over to the web. So, our software architect Pieter Scheldeman, also the architect of the cross-framework, cross-platform FNC framework, searched for some open-source Pascal games. One of the games Pieter found was the Tetris game in the Bianco Games collection from Marco Bianchini:

After checking out the source code of the Tetris game a bit, we were amazed that after less than 30 minutes of work by Pieter, the game was already running in the browser!

You can play with the game for yourself here:

The game does all its painting via the Delphi TCanvas in a custom control. As TMS WEB Core introduces a TCustomControl class with access to a TCanvas object with the same interface as the Delphi TCanvas, the control in which the Tetris blocks fall was working quickly with almost no code changes in the web. It shows the strength of the Pascal to Javascript compiler combined with the component framework we have designed for it.

Have fun playing the Tetris game without needing to install it on your machine. We’re curious and eager to learn if you have more cool challenges to validate our TMS WEB Core technology against.

Get started today: Technical previews of TMS WEB Core, TMS FNC UI web-enabled controls, web-enabled TMS XData, the first parts under the TMS RADical WEB umbrella are exclusively available now for all active TMS-ALL-ACCESS customers.

Bruno Fierens


This blog post has received 8 comments.

1. Monday, March 12, 2018 at 2:59:29 PM


Been playing for more than half an hour :-)

Bernaert dominique

2. Monday, March 12, 2018 at 3:30:08 PM


We should add some code that allows tracking the hi-score and allow players to add their name, so your name would appear on top of the hi-score list :)

Bruno Fierens

3. Monday, March 12, 2018 at 4:30:16 PM

In unigui, there are always three confused problems for developer.

The first is that, when the client press F5 on navigator, everything begins from login form again, not just reflesh the current form as the php page.
The second is that, how to avoid click one button in twice ?
The 3rd is that, how run a showmessage(or form.showmodal) which could block the whole program? Unigui has no solution for it. It could only accept the result of modal window by callback function.

Could you have the best solution to resolve above? Waiting for your reply.
Best regards


4. Monday, March 12, 2018 at 4:53:33 PM

Latest version of Chrome for OS X: arrow keys doesn''t work.

Blom-Dahl Christen

5. Monday, March 12, 2018 at 4:56:06 PM

Correction to my previous post: If you click with the mouse on the arrow key buttons then arrow keys does not work. Seems that focus is on the buttons and not on the tetris panel.

Blom-Dahl Christen

6. Monday, March 12, 2018 at 5:03:16 PM

Arrow key images have no function right now but are only used to explain how to use the game.

Bruno Fierens

7. Monday, March 12, 2018 at 7:32:10 PM

Hi Bruno,

there is a long time that I am waiting for the worfkflow studio in web mode.
I think it s the right time to launch this task ?
what do you think ?

eric fg
luderi sarl

Repiton Pascal

8. Monday, March 12, 2018 at 7:34:38 PM

This new technology indeed opens up perspectives to that. We have meanwhile a long list of plans and ideas, so we''ll need to see where to position this in the list of priorities.

Bruno Fierens

Add a new comment:
  You will receive a confirmation mail with a link to validate your comment, so please use a valid email address.
Change Image
Fill in the characters from the image above:

All fields are required.

Previous  |  Next  |  Index