Kernel laden vanuit boot.dat en afbeelding

Status
Niet open voor verdere reacties.

C Windows

Gebruiker
Lid geworden
22 nov 2008
Berichten
159
Ik ben net begonnen met een Mini-OS te schrijven. Tot nu toe start mijn OS op en zie je een tekst in beeld verschijnen, maar ik zou willen weten hoe je een afbeelding (+progressbar) laat zien in ASM? Het boot-bestand moet exact 512 kb zijn! Daarnaast wou ik vanuit het boot bestand de kernel laden. Origineel boot-bestand is boot.asm wat ik heb gecompileerd met nasm naar boot.dat. De kernel komt echter in kernel.dat (of misschien kan dit anders) en ik zou de main() sub van de kernel willen laden (GDT, IDT, ISR, PIC, etc). Ik zou ook het plaatje vanuit de kernel kunnen laden (die is trouwens in C geschreven...)

Ik hoop dat iemand mij bij dit kan helpen!!
 
Hoi, ik ben ook twee maanden begonnen met het leren van het maken van os'es. Om dit te doen heb je heeeeeeel wat meer nodig dan een 512 byte (let op byte niet kilobyte). Ik weet niet hoe ver je bent? Misschien wel verder dan ik, als dat zo is moet je dit maar negeren en me voor gek verklaren. En heb je al een bootloader, secondstage, fatdrive, GDT, Protective mode en enz enz enz.

Me punt is dat dat plaatje er nu niet tot doet totdat je meer hebt en een goede driver gemaakt hebt voor plaatjes.

(negeer dit aub als je er denkt meer over te weten dan ik, want ik ben echt helemaal niet vertrouwd mee)
 
Ik ben ongeveer halfjaar/driekwartjaar bezig met OS'en maken/bestuderen en de bootloader MOET 512 B groot zijn. Dit is geen probleem, er zijn manieren voor. Ik vroeg me alleen af hoe ik echt afbeeldingen op het scherm kan laten zien :thumb:
Miscchien wat leuke links:

http://www.osdever.net/
http://www.osdev.org/
 
waarom afbeelding via je bootloader laten zien? Ik bedoel, neem aan dat je in C schrijft (of C++ ofzo) dus dan kan je toch gewoon dan pas je plaatje laten zien? Ik denk dat dat minder moeite is.


:thumb:
 
Ja, ik denk dat ik dat maar ga doen :) Ik maak de kernel idd in C++ :thumb:
 
Ik ben ook..

Ik ben ook bezig met mn eigen OS'je aan het maken. Het is nu eigenlijk een bestandje dat zorgt dat de PC opstart, je kan op een knopje drukken en dan reset de PC maar hoe kan ik een C(of C++)-bestand openen in Assembly??

Alvast bedankt,
Risc12
 
Hallo,
Ik zelf ben ook bezig met OS development en het is nog heel lastig. Ik verwijs je eerst maar eens hier naartoe http://wiki.osdev.org/ELF.
Om een binary te laden moet je eerst een binary type kiezen.
Ik zou kiezen voor ELF, maar als je Windows gebruikt PE.
Zie deze website hoe je PE laad: http://www.brokenthorn.com/Resources/OSDevMSVC.html.
Wat trouwens nog makkelijker zou zijn is dat je GRUB gebruik maar daar heb je vast al wel van gehoord. Maar GRUB werkt helaas alleen handig op Linux.
 
Het enige wat ik nu heb is een in assembly (emu8086) geschreven bootloader :shocked:. Ik wil niet mijn hele OS in assembly gaan schrijven maar ik heb geen idee waar te beginnen :( . Ik kan een beetje C++ en C#, ook kan ik VB.NET maar daar heb je niet zoveel aan angezien je daarvoor de .NET framework nodig hebt.

Staan er op die site ook simpele tutorials?

Alvast bedankt voor die link!

Risc12
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan