From what I've read gcc and some kind of assembler is necessary
this is somewhat of a misconception -- any compiler can be used, and many languages (though C is generally considered easier, and most people use it, so its easier to get better help if your using it)
gcc already has a compiler (gas) but most people seem prefer an external assembler like nasm (i use nasm mostly, and MSVC++ (though i havent really used it much), and some people use intels linux compiler)
another important tool is either several spare computers to test on, or a virtual machine -- preferably both:
bochs -- generally considered best, because of its diagnostic tools
VMware player -- more difficult to configure, and isnt as helpful when you have trouble
ive heard rummors that there is a free version of virtualPC also, but i havent confirmed that
btw: every tool i mentioned in this post is completely free (legally), and downloadable online
other than that, your most important tool is references, some good ones are:
## ---- ----- ------ Intel Manuals
this should be your closest companion -- these are indespencable -- especially at the begining, you can download all 5 books in PDF format (handy for searching) and order hard copies (good for reading)
i personally recomend reading volume 3a at least 2 times before begining -- especially chapters 3-6, though make sure you understand everything in chapter 2 first -- esp if you dont have much experience in x86 ASM programming
## ---- ----- RBIL
this is a very useful reference for many things -- even if you are useing a pre-made bootloader, as it isnt just about the bios (though even that can be useful)
OS faq
this is one of the best places for good information -- lots of general information about many important topics
Geezer
the information repository for one of the greatest names in OSdev history -- if your around long, you will most certainly either borrow, study, or quote his work (especially well known for his work on mouse and video drivers)
ATA-ATAPI
you wont likely need much here for a while (most people begin work on FDD -- since its easier to boot on spare computers), but this site is an excellant source of information about HDDs and optical drives, and the ATA/ATAPI specification in general
BonaFide OS Dev
lots of very good tutorials, look here for help
OSRC
lots of information on hardware -- look here for technical specification, and hardware information
and of course this site -- if you get stuck, or have problems, just ask