Hallo Forum,
ich bin neu hier und möchte mich mit einen kleinen Beitrag bei der Community-Gemeinschaft
bedanken.
Leider habe ich nicht viel Zeit,
im Moment ist alles neu und bunt und ich weiß nicht wo ich ansetzen soll.
Ich habe ein kleines MiniOS dass ich mit Quelltext zur Verfügung stellen möchte.
Die Parameter sind:
Assembler Nasm
32 Bit Protected Mode
APIC
Einfacher Tastaturtreiber
Es wurde geteste mit:
VIA nano PC
Pentium 32 BIT Intel 865G Chipset
AMD Athlon X2 mit BS600 Chipset
Boot.asm
<asm>
org 0x7C00 ; Start-Adresse
; alles auf Null ;
xor ax, ax
mov ds, ax
mov es, ax
mov ss, ax
mov sp, ax
; lese kernel von Laufwerk ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov [bootdrive], dl ; boot drive
;-------------------------------------------------------------
;BWS->schwarz
mov cx,2000-4
bild_loeschen:
sub cx, 1
cmp cx, 0
je bild_loeschen_ende
mov ax, 0x0E00 ;Zeichen 0 e bild_loeschen_ende
int 10h
jmp bild_loeschen
bild_loeschen_ende:
;Anfangs-Position-Cursor--------------------------------------
mov ah, 0x02
mov bh, 0x0
mov dh,0 ;24 ; Zeile BWS
mov dl,0 ;79 ; Spalte BWS
int 10h ; Cursor-Position
;-------------------------------------------------------------
;Message:
;-------------------------------------------------------------
mov ah, 0x0E ;auf BWS schreiben ->aktuelle Position
mov al, 0x4C ;Zeichen L
int 10h
mov ax, 0x0E41 ;Zeichen A ;
int 10h
mov ax, 0x0E44 ;Zeichen D ;
int 10h
mov ax, 0x0E45 ;Zeichen E ;
int 10h
;--------------------------------Ende-Massage
;--------------------------------------------
lade_kernel:
xor ax, ax ; mov ax, 0 => function "reset"
int 0x13
jc lade_kernel ;
mov bx, 0x8000 ;Startadresse Kernel
mov dl,[bootdrive] ; select boot drive
mov al, 50 ; read 50 sectors
mov ch, 0 ; cylinder = 0
mov cl, 2 ; sector = 2 (erster Sector Bootsector)
mov dh, 0 ; head = 0
mov ah, 2 ; function "read"
int 0x13
;;;;;;;;;;;;;;;;;;
jmp 0x0000:0x8000 ; adresse kernel
;;;;;;;;;;;;;;;;;;;;;;;
bootdrive db 0 ; boot drive
times 510-($-$$) hlt
dw 0xAA55
<asm>
Leider passt der Kernel nicht das Fenster des Beitrages.
Er ist zu gross!
Hat Jemand eine Idee
Über etwas Unterstützung würde ich mich sehr freuen.
Hier nun der Rest zum runter laden: (erst mal 30 Tage)
http://pastebin.de18098
Relbmessa
ich bin neu hier und möchte mich mit einen kleinen Beitrag bei der Community-Gemeinschaft
bedanken.
Leider habe ich nicht viel Zeit,
im Moment ist alles neu und bunt und ich weiß nicht wo ich ansetzen soll.
Ich habe ein kleines MiniOS dass ich mit Quelltext zur Verfügung stellen möchte.
Die Parameter sind:
Assembler Nasm
32 Bit Protected Mode
APIC
Einfacher Tastaturtreiber
Es wurde geteste mit:
VIA nano PC
Pentium 32 BIT Intel 865G Chipset
AMD Athlon X2 mit BS600 Chipset
Boot.asm
<asm>
org 0x7C00 ; Start-Adresse
; alles auf Null ;
xor ax, ax
mov ds, ax
mov es, ax
mov ss, ax
mov sp, ax
; lese kernel von Laufwerk ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov [bootdrive], dl ; boot drive
;-------------------------------------------------------------
;BWS->schwarz
mov cx,2000-4
bild_loeschen:
sub cx, 1
cmp cx, 0
je bild_loeschen_ende
mov ax, 0x0E00 ;Zeichen 0 e bild_loeschen_ende
int 10h
jmp bild_loeschen
bild_loeschen_ende:
;Anfangs-Position-Cursor--------------------------------------
mov ah, 0x02
mov bh, 0x0
mov dh,0 ;24 ; Zeile BWS
mov dl,0 ;79 ; Spalte BWS
int 10h ; Cursor-Position
;-------------------------------------------------------------
;Message:
;-------------------------------------------------------------
mov ah, 0x0E ;auf BWS schreiben ->aktuelle Position
mov al, 0x4C ;Zeichen L
int 10h
mov ax, 0x0E41 ;Zeichen A ;
int 10h
mov ax, 0x0E44 ;Zeichen D ;
int 10h
mov ax, 0x0E45 ;Zeichen E ;
int 10h
;--------------------------------Ende-Massage
;--------------------------------------------
lade_kernel:
xor ax, ax ; mov ax, 0 => function "reset"
int 0x13
jc lade_kernel ;
mov bx, 0x8000 ;Startadresse Kernel
mov dl,[bootdrive] ; select boot drive
mov al, 50 ; read 50 sectors
mov ch, 0 ; cylinder = 0
mov cl, 2 ; sector = 2 (erster Sector Bootsector)
mov dh, 0 ; head = 0
mov ah, 2 ; function "read"
int 0x13
;;;;;;;;;;;;;;;;;;
jmp 0x0000:0x8000 ; adresse kernel
;;;;;;;;;;;;;;;;;;;;;;;
bootdrive db 0 ; boot drive
times 510-($-$$) hlt
dw 0xAA55
<asm>
Leider passt der Kernel nicht das Fenster des Beitrages.
Er ist zu gross!
Hat Jemand eine Idee
Über etwas Unterstützung würde ich mich sehr freuen.
Hier nun der Rest zum runter laden: (erst mal 30 Tage)
http://pastebin.de18098
Relbmessa

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken

Gespeichert
