Dos Assembly

Just some programs I've coded so far. They aren't much commented, but include an algorithm...

Decrypt_2.asm - a program which shifts all the symbols in a string on a constant number of positions...
Lifedir.asm - a simple realisation of Life using direct access to video memory...
Ordin.asm - this program calculates the distance between 2 symbols(e.g. B-A=1)...
Ungetch.asm - just an asm realisation of C function ungetch()...
132x25.asm - changes the video mode to 132x25. Works well with FAR, if you enable it before executing FAR...
Dos1.asm - learn the real version of your MS-DOS...
Lines.asm - the program for drawing lines. It can be used to draw maps for text-style quests. I'm planning to make this a TSR...
Sqr.asm - an sqr function...
Prob.zip - Probability theory. A bunch of simulation programs...
Lib.zip - my own routine library. It is used by most programs...

Knuth algorithms implementation

K_DECK_2.asm - the 2.1 asm implementation
K223_1.asm - the 2.2.3 first part(X <= AVAIL and AVAIL <= X) asm implementation + SEQMIN and POOLMAX implementation
K223_2.asm - the stack implementation
K223_RF.asm - the queue implementation
Input.asm - the #13 of the 1.3.2 part exercise solution
Pasha.asm - the solution of #14
Pasha_2.asm - the solution of #15
Msqr.asm - solution of #21
Iosif.asm - solution of #22

Programming contests' problems

Bases.asm - Given 2 numbers, calculate the bases(less than 32) in which these 2 numbers are equal...
3n.asm - The solution to 3n+1 problem(#100) of the Volladolid Online contest
cubes.asm - Find all the solutions to a^3+b^3+c^3=d^3, where a,b,c,d are positive and are less than 100

Cryptanalysis programs

Crypt01.asm - this one shows the number of each letter's appearences in text and total number of letters...
Crypt02.asm - you can use this one to test your assumptions. First you press the letter you want to test the assumption for and then what you assume it to be. Watch the result!
Crypt03.asm - this one shows the frequency of each letter(in %), then how many times it is the first letter, second,the one before last letter and the last one. In all it is a more-featured first one...

SVGA graphics

Vesa_01.asm - get the brief info about your video card...
Vesa_02.asm - check if 640*480*256 is present...
Vesa_03.asm - test if protected mode interface is present...
Vesa_04.asm - test if required video mode is present...
Vesa_05.asm - show the video info buffer...
Vesa_06.asm - fill the screen...
Vesa_07.asm - Just put a white point in the center of the screen...
Vesa_08.asm - draw a horizontal line...

VGA graphics

Demo_1.asm - Fade down and fade up effects...
Demo_2.asm - Circle drawing, fade down, fade up...
Demo_3.asm - Circle drawing, rectangle drawing, fading down, fading up...

Win32 Assembly

These illustrate the use of the WinApi functions. Converted by me from C to Asm, taken from the FirstSteps site(WinApi Section)...
But some of them on the site only give idea. My realization is sometimes completely different...

Step_1.asm - getting some info on opened windows...
Step_2.asm - example of how to execute a shell command in asm...
Step_3.asm - playing with the menu of other program...
Step_5.asm - painting on a desktop...
Step_7.asm - do you want to know more about your hard disk?
Step_8.asm - get the network name of current user...
Step_9.zip - an example of Mutex synchronization...
Step_10.asm - you really want to know what locale you have, don't you?
Step_11.asm - is your drive C: a CDROM? Wanna check?
Step_15.asm - Do you have your numlock on? This program will help you to find it out...
Step_17.asm - This time, guys we'll close the calculator program by sending a message to it...
Step_18.asm - Have you ever needed to get the name of the .exe file of the current program. Here you go...
Step_19.asm - Execute the program using WinExec...
Step_20.asm - Get the current path where the special folders(e.g. Recent) are located...
Step_21.asm - Create a LOG file...
Step_22.asm - Call a dll function from a program directly using GetProcAddress...
Step_23.asm - This program checks the presence of MZ signature in a file with the .exe extension, thus checking if it is a real exe...
Step_32.asm - Show all the active processes. This one was totally rewritten, because originally it was in MFC...
Step_33.asm - fully functionable process terminator. Use it freely...
Ch_txt.asm - changes the extension of all *.asm files to txt....
Step_37.asm - get the version of your Windows...
Step_38.asm - get NetBios name of your computer...
Step_89.asm - SetCursorPos and GetCursorPos...
Step_100.asm - convert to lower case and back...

CGI in ASM

These ones show that assembly is a universal language. This time we program cgi's with it.
Cgi_1.asm - just a test, but working nevertheless, it shows the classical "Hello, World" and current time, year, day of week...
Cgi_2.asm - shows all the present environment CGI variables, eg. SCRIPT_NAME,SERVER_SOFTWARE,etc...

Download all the sources in one pack here

To be continued...