[quote=Hery Sasta]Ok, let?s start. First you must download some programs which you will need when you will be writing your OS. You must know assembler and if you want C or C++ or Pascal. Of course you can write whole OS in assembler but I don?t think that code will be simply and easy to understand. The most popular language (for OS developing) is C (or C++) but some people write their OS in Pascal.
So, you will need compilers. For assembler one of the best is NASM (
http://nasm.sourceforge.net), but other people use also YASM or FASM, it depends which syntax is easier for you. The best C compiler is GCC, but if you want write assembler inline C code you must learn AT&T syntax, which is strange. Second option is Turbo C, but I don?t know that anyone use it instead of GCC.
When you write your OS it?s normal that you can?t run it under another OS like normal program. You must start your computer from floppy, it is annoying, so most people prefer emulators. This programs emulate real computer and you don?t have to restart your computer all the time. The most popular are Bochs (
http://bochs.sourceforge.net) and qemu.
!!WARING!! Emulators, like every program, have bugs. DO NOT test your OS only on emulators. Run it also on different real machines.
OK, you have got compiler and emulator, the last thing which you need is program which put your system on floppy. When your OS will support FAT it won?t be problem you will normally put files on floppy. But now your system doesn?t support any filesystem, so you have to put files in sectors manually. For Windows I can recomend PARTCOPY, for *nix systems there isn?t problem you have dd. How to use this programs you can read:
for PARTCOPY: in file included to program,
for dd: typing command man dd,
If you want to you can get text editor which colour syntax. In *nix systems you have lot of them (vi, kwrite, etc.), but for Windows you have nothing. So, if you are using Windows, download Crimson Editor, very good text editor which colour syntax of lot of languages (assembler, C, Pascal, PHP, HTML, Perl, etc.).[/quote]