BCTMP

 

 

 

BCTMP *

BCTMP - Brian Caos Tetris Music Player *

Playlist *

Module information *

What is a music player? *

What is Brian Caos Tetris Music Player? *

BCTMP Functions *

BCTMP Technicalities *

Tetris Rules *

Synopsis *

The Game / How to Play *

How to drop a bomb *

How to score *

How to move to next level *

Tetris Game Keys *

Tetris menu *

In-game keys *

About BCTMP *

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

© 1998 Caos Development

All rights reserved

BCTMP - Brian Caos Tetris Music Player

 

  1. The title bar shows the name of the module being played.
  2. Playlist. Press to edit the playlist.
  3. Module information.
  4. Play Tetris.
  5. Rewind playing module.
  6. Stop playing.
  7. Play / Play next module in playlist.
  8. Pause module.
  9. Forward module.
  10. Current position in playing module.

 

Playlist

Add modules to the playlist by dragging and dropping from the directory list to the play list or by pressing the "Add" button.

  1. Add selected item to playlist.
  2. Add all modules in current directory to playlist. The modules will not be added if it allready exists in the list.
  3. Delete selected item from playlist.
  4. Delete entire playlist.
  5. Press OK to confirm list, or cancel to reject.

 

Module information

Module information is retrieved from the playing module.

 

 

 

 

 

 

 

 

 

What is a music player?

It all began with the Commodore Amiga. A (at that time) powerfull machine with great game capabilities, including 4 hardware channels for sound, enabling the machine to play 4 samples at a time, 2 in the left channel, 2 in the right.

This led to the invention of SoundTracker (from the demo group DOC). This was a musical tracker with 4 tracks, one for each music channel. The output of SoundTracker was a module (.mod), a piece of music where the instruments was samples.

Other tracker followed, NoiseTracker, FutureTracker, ProTracker etc., each with cool editions to the .mod format.

But as the PC gained market and Amiganerds started to switch to the PC, demands for a similar tracker was born. A lot of trackers has emerged, the coolest probably being Fast Tracker II, ScreamTracker and Impulse Tracker, each with their individual formats.

When some people like the one tracker, others another, computermusic lovers need a program that can play these different formats, so you don’t need to switch between the trackers to listen to different artists.

Such program is a music player.

 

What is Brian Caos Tetris Music Player?

This is a attempt to make a music player with a little twist. As many of the music players out there today has very cool interfaces (YAMP) and great functionality (Cubic Player) they never seem to let yourself entertain yourself. They just play music for you.

This music player has built-in Tetris game, so you can listen to your favorite modules while playing a great game.

The idea of a Tetris Music Player came from Fast Tracker II, which has built in Nibbles, but since Nibbles get very boring very fast, I decided to throw in one of my all time favorite games.

 

BCTMP Functions

BCTMP is based on the MIDAS Sound System. Please refer to the readme.doc for information about MIDAS copyrights.

Tetris requires DirectX, see http://www.microsoft.com/directx for DirectX drivers.

BCTMP Technicalities

This description is only for techies!

As the egoist I am, I’ll tell a little about the Tetris game engine.

An important reminder. The update of game movements are many times faster than the screen drawing. The real optimizing lies upon fast rendering of the screen.

The engine is seperated into two threads, one for the game movements and one for the screen updates.

The thread for the game movements are kept alive by a hardware interrupt timer. The timer starts the thread 20 timer per second. Actually the thread is suspended until the timer triggers the thread.resume. On a resume, the thread make one game movement (animations, movement of blocks if any and so on). When the movement is finished, the thread is suspended until another timertick arrives. The movement thread has the highest priority thus ensuring that it is performed excactly 20 timers/second.

When suspending and resuming the thread, it is assumed that there is enough CPU left between the timerticks to draw the screen. if not, the screen is updated with less frames per second (fps) than the game speed.

The screen update thread runs with normal priority. Actually it is more important to have a steady update of the game that a steady update of the screen. The screen.draw routine is encapsulated with a variable telling the game update thread when the screen is drawn. The screen update is called from the game update thread when this variable is FALSE.

The trick is done to ensure that the game runs with the same speed on any machine, fast or slow. On slow machines, the screen.update is slower than 20 fps, but the game still has the same pace.

Thats how this game is made. Now go and make your own! :-)

Tetris Rules

Synopsis

The first game of Tetris was developed by Alexy Pajitnov, a russian professor, especially for the low-end PC's common in russia 10 years ago. Alexy is now head of the games department at MicroSoft. This version differs from the original concept in some ways.

The Game / How to Play

As you all know, Tetris is a game of luck and skill. The playfield is a 10x20 pitt, where bricks i 7 various shapes fall from the ceiling. When the bricks hits the floor, or another brick, it stays there, and a new brick will fall.

When a horisontal row in the pitt is filed with bricks, it dissapears. The game is over when there's no more room at the top for falling bricks.

The bricks can be moved from side to side, downwards and rotated. If you don't move the brick downwards, it will automatically drop after a certain amount of time, higher levels gives less time.

This version also introduces a bomb, which is explained now.

How to drop a bomb

For each row removed, you are awarded 2% in bomb-points. The bomb increases in power as you increase the bomb counter.

Press [SPACE] to drop the bomb.

The bomb destroys the top row if, and only if, there's enough power to destroy a row. The bomb needs 2% power for each block in the row.

You are given no points.

The bomb is for emergency use, but can also be used to "flatten" top rows.

How to score

You can score points in two ways:

Drop points : Each time you move a brick downwards, until it won't drop anymore, you are given points.

Droppoints : <downmovements>*Level div 2

Row points : Each time you clear a row you are given points. If you can clear multiple rows, more points are added:

How to move to next level

You move to a new level, when you remove some rows, meaning that if you remove mulitple rows, it only increases the next level counter by 1.

With this system, you are awarded more points if you dare go for multiple rows.

 

Tetris Game Keys

Tetris menu

Use arrow keys in menu. Up/Down to increase bar position, left/right if any value can be changed.

In-game keys

[Up] : Rotate Brick

[Down] : Move brick downwards

[Left] : Move brick left

[Right] : Move brick right

[SPACE] : Drop bomb

[P] : Pause game

[N] : Play music / play next song

[F] : Music Forward

[R] : Music Reverse

[S] : Music Stop

[ESC] : Abort game

 

About BCTMP

BCTMP is (c) 1997 Caos Development.

All rights reserved.

Programming and design:

Brian Pedersen.

This Program is Shareware, and may be distributed freely if distributed in its entirely, and without any changes except for compressing purposes.

The BCTMP is distributed as-is. The author disclaims all warranties, expressed or implied. The author will assume no liability for damages either from the direct use of this product or as a consequence of the use of this product.