Introduction: Make a Matrix Screen With Pseudo-Random Number Generator

Picture of Make a Matrix Screen With Pseudo-Random Number Generator

If you like the matrix, and have some spare time, you could make an endless program, that shows random numbers, as fast as the computer can run it, looking very similar to the matrix! It only takes about 5 minutes to prepare!

I was having a look around the Instructables site, and saw some Matrix screen makers.
I like writing computer programs, and one time decided to make one of these, and I am going to show you how!

You must have the Microsoft .NET Framework 3.5 installed to do this.

Please rate, it is my first instructable, and I want to know how I go.

If you do not have the Microsoft.NET Framework 3.5, you can easily download it from the Microsoft Download site (, and search for .NET 3.5.

I have made a new version that spits out random characters, instead of just numbers.

It DOES NOT show a screenshot of the matrix, or show a 3D screen. Just random letters. In green.

Step 1: Coding

You need to download the code file attached, and save it in to your my documents folder. If you are interested in computer programming, this program might be interesting to look at. You need to copy all of the italic text, and save it to a file called Program.txt.

using System; namespace Matrix_V2 { class Program { static void Main(string[] args) {
//Sets the text color to green
Console.ForegroundColor = ConsoleColor.Green;
//Create a string with some random characters
string random_characters = "£¤¥¦§¨©ª«¬®¯±²³´µ¶·¸¹ºΣΤΦΩαβδεμπστφABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz<,>.?/:;\"\'{[}]\\|`~0123456790-_=+!@#$%^&*() ";
//Get all of those characters and turn them into an "array"
char[] random_characters_array = random_characters.ToCharArray();
//Clear the screen Console.Clear();
//Writes details about the application to the console screen
Console.Title = "Matrix V2 - Press Ctrl+C to exit";
Console.WriteLine("Matrix V2");
Console.WriteLine("Written by Chris Ward");
Console.Write("Press any key to continue");
//Creates a pseudo-random generator
Random r = new Random();
//Creates a statement that runs forever
while (true) {
//Gets the ASCII character from the array, based on what the number is
//then runs the statement again... and again... etc.
} } } }

Step 2: Creating Batch File.

Open notepad again, and type this, only changing text if you know exactly what you are doing, and make sure it is all on one line, as I moved it on to separate lines so it would fit

 @C:\WINDOWS\Microsoft.NET\Framework\v3.5 \csc.exe /noconfig /nowarn:1701,1702
/errorreport:prompt /warn:4 /define:TRACE /reference:"C:\WINDOWS\Microsoft.NET\Framework
\v2.0.50727\System.dll" /filealign:512 /optimize- /target:exe /out:Matrix.EXE Program.txt

Then you must save it as a .BAT file, in the same location as the program.txt file.

Step 3: Running

Picture of Running

Simply double click the batch file, and the command prompt window should close quickly. Once it has closed, the file should have been written (Matrix.EXE). Now all you have to do is run the program (Matrix.EXE), and the program will run.

If the file isn't created, add on a new line @pause to the batch file, then try running it again, then if there is detail on an error, post a comment and I will try to fix the problem. Any other problems? Just post a comment.

Step 4: Troubleshooting

 Error text: 'C:\WINDOWS\Microsoft.NET\Framework\v3.5'  is not recognized as an internal or external command, operable program or batch file'

* This is actually my fault, I made a mistake on the batch file. I will update the code on it, but to change it, there is a little space, just after the\v3.5 and before the \csc.exe. Just remove that space and run again. Alternatively you could download the code again

Any other problems? Post a message and I will get back to u asap.


NightCrawler626 (author)2010-06-06

I copied the code and removed the space before \csc.exe and it ran very nicely. thanx for the matrix code, much more realistic than simply using the random number code.

kahlehl (author)2010-02-12

so i have to have the frame work in order for this to work, and i really dont want just random as letters and numbers, does it look exactly like it in the picture?

chrisgward (author)kahlehl2010-02-12

It doesnt look exactly like in the picture, what you are describing seems to be correct. I am currently working on a version that is more similar to the picture, but i cant make it in 3d, no idea how, lol. I will upload a new picture soon.

chennurus (author)2015-07-31

f53791. (author)2014-07-27

My batch file won't change into a exe file. Is this because I have framework 4.5?

mikroskeem (author)2012-04-29

All this software users! Modifications of my version:
#no data and keypress, fast running
#maker error fixes(like spaces)
# link:
Than you!

chrisgward (author)mikroskeem2012-05-01

Not sure what you mean by it's fast running, it's all about the speed of the computer. If anything you'd want to slow it down so it doesn't chew up too much CPU. And what do you mean error fixes? I didn't realise there were any errors. I pulled your source and can't find any error handling

mikroskeem (author)chrisgward2012-05-09

i meaned errors in maker(look up!):P Like spaces!
I removed author data and "press enter" to start

chrisgward (author)mikroskeem2012-05-09

Well it is actually against the licence that the code is released under to remove that line and not attribute in any other form, just add a comment or something around the top saying it's derived from my source

skypeaful (author)2011-07-16

Can you tell me where is the place of the code "Press Ctrl+C to exit"? I want to change the combination key "Ctrl+C" to another key. Thank

chrisgward (author)skypeaful2012-04-18

(Sorry for the late response) Ctrl+C is a standard key in Windows and other operating systems which simply kills the program where it is. In my code, I haven't actually got it listening for Ctrl+C, but I'm letting Windows kill the process when it is pressed. In short, Ctrl+C can't be changed without adding a lot more code.

swolff (author)2011-09-25

Please help
it runs, closes just like its supposed to. but no file is created. HELPPPP

chrisgward (author)swolff2011-09-25

Please read the troubleshooting section at the bottom of the Running page.

swolff (author)chrisgward2011-09-29

Oh and @pause

swolff (author)chrisgward2011-09-29

@Tecnodancer, I put "@echo off" at the end, but still no .Exe file... Please help, I really want this to work. I've also tried deleting spaces, but i don't know witch ones to delete. What am I doing wrong?

swolff (author)2011-09-25

when i run it it just says
The directory name is invalid.
Press any key to continue . . .

fabsy333 (author)2011-06-04

wat does the Matrix.EXE file even look like??

fabsy333 (author)2011-04-21


fabsy333 (author)2011-04-15

even know i removed the space, it did not make the Matrix.EXE file.

chrisgward (author)fabsy3332011-04-16

Open the .bat file in notepad and add the line "@pause" to the end of the file on a new line. Run the bat again and post here what it says. Thanks

lifeiserty (author)2011-02-26

When i run the batch file it quickly opens and closes


SLAYERab (author)2010-09-22

I have the same problem as T8tersaild.

SLAYERab (author)SLAYERab2010-09-22

Could you possibly upload the file

chrisgward (author)SLAYERab2010-09-23

With the bat file should open and close really quickly. After running the batch file, a .exe file should now appear in the folder where you ran the .bat file. If there is none, please reply.

T8tersalid (author)2010-05-14

When I click on the program folder, it just opens notebook. How should I get it to open in command prompt?

chrisgward (author)T8tersalid2010-08-07

Open command prompt Start > Run > cmd
Type cd Location of files
Press enter
copy the line for the compiler, the really long one. 

T8tersalid (author)chrisgward2010-08-07

Hmm still doesn't work, when i click on the .bat file, another command prompt window just opens really quickly and closes really quickly.

bigZ_ (author)2010-08-07

does it work in my Win7?

chrisgward (author)bigZ_2010-08-07

it should, however I have not tested it.

G.J. Dyason (author)2010-05-29

when I run the program a window opens (windows\sistem32.cmd.exe) and is says press any ket to continue . . . and if I press any thing it just closes. What is posibly the problem?

technoguy94 (author)2010-04-27

It keeps saying it can't find the file, but its in the same folder as the batch file and it's called 'Program.txt' just like the instructions say. Can you help?

chrisgward (author)technoguy942010-04-30

I am not sure of the problem you are having. Do you have the framework installed (to check just go to the 'C:\WINDOWS\Microsoft.NET\Framework' folder and see if the v3.5 folder exists

freddieboy4883 (author)2010-02-26

please help


warning CS1691: '1702/errorreporting:prompt' is not a valid warning numer

Thank you Michael Fitzgerald

Note: Currently Running Windows Vista Home Premuim

Hi, it seems that there was a problem in the bat file, which is caused by the copying, simply just add a space where the (*) is


michaelhaseth (author)2010-01-05

When I run the batch it gives me this:

Program.txt(23,8):error CS0116: A namespace does not directly contain members such as feilds or methods

Program.txt(23,42):error  CS1022: Type of namespace definition, or end-of-the-file expected

Can you help at all?

chrisgward (author)michaelhaseth2010-01-05

 I ran the code myself, and it worked just fine. If you copied the code, maybe you should try downloading the code, I don't have any idea why it shouldn't work... wierd...

andrewthach (author)2010-01-02

 awesome, dude, it worked!!!!!!!!!!

andrewthach (author)2010-01-01

 it doesnt work, when i click on the batch file, it says, that its unrecognizagble or somehtin

chrisgward (author)andrewthach2010-01-01

 can you please tell me exactly what it says?

andrewthach (author)chrisgward2010-01-02

 It says that "not recognized as an internal or external command, operable program or batch file.

chrisgward (author)andrewthach2010-01-02

 OK. I will post it up on the troubleshooting page (last one) if that still doesn't help, please reply here again.

yout (author)2009-12-21

could you upload the MATRIX.bat file becuase when troubleshooted it just made a huge green screen on CMD

chrisgward (author)yout2009-12-22

If it is when you start the "matrix.exe" program, it should show a screen with detail on the application. Then you need to press any key. It should then start  writing random characters to the screen. This program doesnt eventually show an image of the matrix, it merely writes random stuff to the screen. If you get the green screen while running the batch file, let me know.

HandyBob (author)2009-12-16

The intro is a nice eye-catcher, but spewing out some random numbers doesn't make a matrix theme. If you know how to use the right characters, please share, I'd love to know.

chrisgward (author)HandyBob2009-12-16

I could change the code a bit to spit out an ascii character based on which number it is, but that would make the code confusing, and very large, is that what you meant?

HandyBob (author)chrisgward2009-12-16

Of course ascii, that could be a good alternative. I was too focused on those Japanese looking glyphs.

chrisgward (author)HandyBob2009-12-16

with it being command line, I would use other things, but you would need to install lots of other language packs and mumbo jumbo. I will work on the new code, and put it up here asap.

chrisgward (author)chrisgward2009-12-16

Do you think i should explain the code in comments in the code file itself?

HandyBob (author)chrisgward2009-12-16

Whatever you find easiest. Personally I'd go with comments, unless you'd want to write it in an instructable.

About This Instructable




Bio: I love writing computer programs and pulling stuff apart to "see how it works", then putting it back together again.
More by chrisgward:Interfacing your arduino with a C# programMake a Matrix Screen with Pseudo-Random number generator
Add instructable to: