Kremlin logo

Battle for Moscow computer game documentation

Battle for Moscow is a WWII computer wargame with source, SB and EGA.

The source code is included and you are free to examine and make changes. All of the data files for unit strengths, placements, the map terrain even the rail road lines are all ascii text modifiable, as are the sound file names. Add sounds of your own at key places or add a background track. Edit unit strengths, initial placements or Corps names.

EGA and Sound Blaster support

To startup using sound (highly recommended) type:-

     mos 1 5 7

     1= Use sound
     5= DMA
     7= IRQ
This is the typical setting for most sound cards, your sound card may have diffrent DMA and IRQ settings.

There is a batch file with the parameters already set. Type:-

To startup without sound type:-

     mos 0 0 0
or change the moscow batch file to reflect these settings.

Battle for Moscow is a simple game and I wanted to learn what is involved in programing a wargame for a future larger project. I hope the source is constructive for someone in designing something similar.

The programmer, Stephen Balbach says of it:-

I wrote BfM starting 1988 through 1993 while at college. The structure of the source are two distinct elements: a data array of the map, and a graphical representation of that array on the screen. All the mechanics of the game are done in the data array, then translated to the screen through the array_to_map function. The map_to_array function then translate mouse-clicks on the screen back to locations in the data array.

It is very open to changes - internal PBEM support (automatic updates). Play over Internet support - should be relatively easy to implement given the are no bitmaps and everything is drawn real-time from data arrays. Because of this the data arrays are ASCII text and can be modified to change the map, terrain, counters locations and look. Sound is played through a utility called "play.exe" which can be replaced with any program you have that plays .wav files by renaming it "play.exe" so any sound-card is supported.

I hope others have as much fun learning and playing from this as I did writing it. Thanks to Frank Chadwick for making such a complete and elegant wargame.


I can now be found as Vice President of ClarkNet (Clark Internet Services, Inc.) a Internet Service Provider in the Washington DC area.

Back to Battle for Moscow computer game

Stephen Balbach