I just want to talk about it with you.

I know almost of you develop OS use GCC on Linux, but I am not familiar with Linux platform, so I just write OS on Windows, use MASM and VC.
Are you sure you use C++ or pure C ? I use pure C.gedd wrote: I use VC to developp my kernel in C++
I also use Visual Studio 2005/2008 and MASM to develop my OS. If you have questions, feel free to ask. In some other thread I listed what options were necessary to make Win32 dependencies go away.david wrote:Are you sure you use C++ or pure C ? I use pure C.gedd wrote: I use VC to developp my kernel in C++
Even though I use VC, but I only use its compiler and linker(cl.exe and link.exe). I don't use any obj, lib and DLL of windows. My mothod is similar to the URL you give me. But I use MASM 6.15 and VC6. The tools are different with yours, but the mind is as same as yours.
1: build EXE file by C compiler
2: load exe file to memory in masm routine
3: jump to the main entry poin of exe file
then......![]()
I also want to use VC7 or VC8 etc at the beginnig, but I am afraid that its .NET IL assembly language could not work well with MASM, so I decide to use VC6 .
I will read it seriously.
My following work is IPC.
Is there any reason why you want to use plain binaries?Masterkiller wrote:I am using a windows platform, but I still can't get my visual studio outputs plain binary filesso I program in NASM only.
Yup, because they allow mixed 16-bit and 32-bit mode that occur between switching processor modes (and my OS design will access to all processor modes, including real). Anyway I got a headache trying to create a physical pages bitmap base ot the system map returned by BIOS, because of freaking 64-bit numbers, so I will postpone 32-bit coding for a while.neon wrote:Is there any reason why you want to use plain binaries?Masterkiller wrote:I am using a windows platform, but I still can't get my visual studio outputs plain binary filesso I program in NASM only.
It is possible to provide an interface (can be a single routine) for your 32 bit program to use to switch between processor modes. I dont know if it will fit you design needs or not, however it is an option.Masterkiller wrote: Yup, because they allow mixed 16-bit and 32-bit mode that occur between switching processor modes (and my OS design will access to all processor modes, including real).
Yes, except main function in the kernel, all components are objectsdavid wrote:Are you sure you use C++ or pure C ? I use pure C.
As ru2aqare said if you don't want use C++ ( in fact managed C++ or C++/CLI), to produce a .net exe, you're absolutly free to produce native code.david wrote:I also want to use VC7 or VC8 etc at the beginnig, but I am afraid that its .NET IL assembly language could not work well with MASM, so I decide to use VC6 .