help about Boachs,FritzOS(kernel),80386, Assembly, C++ plz!!!!
- From: "xeyder" <spamtrap@xxxxxxxxxx>
- Date: 2 Dec 2005 15:38:11 -0800
hi to everyone,
I need an urgent help about assembly codding for OS development !!
My problem is to implement a clone of old DOS game(supaplex) on bare PC
hardware.
So I will implement only the bare minumum parts necessary for the
game.
but most of the startup code have been prapered already for me..
I use FAT12 boot loader.The boot sector source code will be supplied to
me.
I am expected to implement a clone of DOS game ,supaplex.In order to
achieve this,
i need to modify the kernel sources.
The problem is to implement the game without the runtime help of any
other OPERATING SYSTEM or SYSTEM BIOS.Thus I will have to improve the
kernel given to me by
codding drivers for PIT,PIC and KEYBOARD.
But I do not know much thing about this ??
can anybody gives ideas about from where I should start??
KERNEL: the kernel is slightly modifed version of FritzOS .it contains
basic code for a limited C library. ( MEMORY:memset ,strlen , I/O:
inportb ,outportb ; CPU: cli,st,reboot; Console Output: printf
,gotoxy,clrscr,Print(C++) Console_input:getch ;
Stdarg.h )
These are very simple versions and do not conform to ANSI standards.
I can aslo use limited C++ functionality by using classes .
The program will begin at extern "C" void start () ,there are no
command line parameters and the function cannot return.
So I have additional required functionalities for kernel:
· Setting up interrupt handlers and IDTR, additionally enabling them
by sti
· Need to update the GDT to build the IDT (there are several items,
research first)
· need to redirect IRQ0-IRQ7 from INT08h-INT0fh to higher interrupts
(INT00h-INT1FH reserved for the CPU)
· A complete keyboard driver (interrupt driven, not polling - IRQ1)
which can accept multiple keys at once (e.g.: SPACE+UP, etc)
· A timer driver (IRQ0)
· need to store a level in C++ code probably as a pre-populated array
but how I can do all this? I do not where to start ..
I have the os.tar.gz (FritzOS ) which contain the necessary system to
compile my code and a generate a floppy image.
I can use PC emulator BOCHS
CPU state: Kernel must be prepare the IDTR and stay in protected
mode.Since it will be evaluated by using the BOCHS debugger .
Required file from me:
Kernel32.cpp , kernel.asm (boot.asm and loader.asm is ready in
advance)
So Can anybody help me how can I achieve above problem ???
Any resources, any experiment like this ,any idea , any starting idea
, ... ??
As I sad before ,I even do not know from where I should start.
plz help..
Thank you in advance,
I am looking forward to hear from you!! :)
Xeyder
.
- Prev by Date: Re: Intel disassembler using lex/yacc
- Next by Date: Assembler in Lex/Yacc
- Previous by thread: Chicago - Did you take MASM615 Assembly Language
- Next by thread: Assembler in Lex/Yacc
- Index(es):
Relevant Pages
|