My Home Page

There are many programming languages in the world. Each programming language has its own advantages and disadvantages. For example,C and C++ are good in handling complex function structures but are relatively weak in high-speed direct control of memory as well as some low-level high-speed calculation which involve suitable management of registers. Assembly language, although being dexterous, is too complicated and impractical for writing big programmes. Therefore, a combination of several programming languages can complement each other's weakness and achieve greater efficiency and capability.

My programs:

To use C program to achieve high screen resolution in MS-DOS mode does not need to install your video card's driver. As long as your SVGA video card(no matter how poor) is plugged in, it can draw. Here is a header file SVGA.H for C/C++ programmers to access SVGA graphic modes in MS-DOS mode. It is also a good example of coorperation between C++ and assembly language.
is obsolete:(

This is a very good graphic tool, it provides putpixel() and getpixel() functions for different SVGA graphic modes. These functions works excellently fast. They can draw 1,200,000 to 5,000,000 pixels in order on the screen within 1 second on a PC300. These programmes works well in MS-DOS real mode and any windows versions except Win2000/WinXP/WinNT.

Here is a MS-DOS graphic calculator in SVGA mode using the above SVGA.H. It can plot 2D graphs and do differentiation. Quite useless and obsolete! But this is the way how computer graphics works in the past. Press F12 to abort program in case of crash. The project is incomplete and aborted.
this project is incomplete and abandoned :(

Here is a 3D model editor using Direct3D 9.0 SDK. A simple mesh editor:

is still under further development :)

Here is my simple MS-DOS game, Tank Battle, together with tile editor and map editor! Can you remember that old Ninetendo game you played in your childhood? This one a bit different. The graphics is very poor because I cannot use SVGA mode under WinXP/NT/2000. So 320*200*256 color mode! SUPER BIG MOSAIC!

 is still under further development :)

If you do not have a C++ compiler, or your C++ compiler does not support direct insertion of assembly code, you may downlaod it from here. This compiler supports all the functions which Borland Turbo C++ 3.0 has and also contains Turbo Assembler 5.00. In this IDE, you may press Shift+F3 to transfer to assembly compiler.----------------------------------->

Useful Links and Downloads:

BIOS INT 13H specification

PowerQuest PartitionMagic 7.0

If you encounter any problems, or you want to download my source code for improvement, feel free to contact me at

Dear my JC classmates, to see our classphotoes please go to CLASSPT.HTML