Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - najjannaj

Seiten: 1 2 3 [4]
61
Offtopic / OS-Coder-Karte
« am: 31. August 2004, 11:45 »
Karlsruhe <- Kultuhauptstadt 2010
62

Windows Make-LOG:


nasm -f bin ./boot/loader.asm -o bl.img
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o kernel.o kernel.c
In file included from kernel.c:19:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/irq.o processore/irq.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/idt.o processore/idt.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/cpuid.o processore/cpuid.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/8259.o hw/8259.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/8253.o hw/8253.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/keyboard.o hw/keyboard.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o mem/fismem.o mem/fismem.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o io/io.o io/io.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/stdlib.o libc/stdlib.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/bitops.o libc/bitops.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/stdio.o libc/stdio.c
In file included from libc/stdio.c:2:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/string.o libc/string.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/task.o task/task.c
In file included from task/task.c:4:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/scheduler.o task/scheduler.c
In file included from task/scheduler.c:3:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/tss.o task/tss.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o video.o video.c
ld -Bstatic --oformat binary -okernel.bin kernel.o processore/irq.o processore/idt.o processore/cpuid.o hw/825
9.o hw/8253.o hw/keyboard.o mem/fismem.o io/io.o libc/stdlib.o libc/bitops.o libc/stdio.o libc/string.o task/task.o task/scheduler.o task/tss.o video.o -Ttext 0x10000 -Map kernel.map


cdjgpp\bin/ld.exe: warning: cannot find entry symbol start; defaulting to 00010000
processore/idt.o(.text+0x7a3):idt.c: undefined reference to `exec_irq'
make.exe: *** [kernel.bin] Error 1


Linux Make-LOG:


nasm -f bin ./boot/loader.asm -o bl.img
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o kernel.o kernel.c
In file included from kernel.c:19:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/irq.o processore/irq.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/idt.o processore/idt.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o processore/cpuid.o processore/cpuid.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/8259.o hw/8259.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/8253.o hw/8253.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o hw/keyboard.o hw/keyboard.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o mem/fismem.o mem/fismem.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o io/io.o io/io.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/stdlib.o libc/stdlib.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/bitops.o libc/bitops.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/stdio.o libc/stdio.c
In file included from libc/stdio.c:2:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o libc/string.o libc/string.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/task.o task/task.c
In file included from task/task.c:4:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/scheduler.o task/scheduler.c
In file included from task/scheduler.c:3:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o task/tss.o task/tss.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc -c -o video.o video.c
ld -Bstatic --oformat binary -okernel.bin kernel.o processore/irq.o processore/idt.o processore/cpuid.o hw/8259.o hw/8253.o hw/keyboard.o mem/fismem.o io/io.o libc/stdlib.o libc/bitops.o libc/stdio.o libc/string.o task/task.o task/scheduler.o task/tss.o video.o -Ttext 0x10000 -Map kernel.map
cat bl.img kernel.bin > uos.img
63
Hi,
bekomme Folgende Make-Meldung(unter Windows, rot makiert) beim Kompilieren eines Projektes:


Windows Make-LOG:


nasm -f bin ./boot/loader.asm -o bl.img
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o kernel.o kernel.c
In file included from kernel.c:19:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/irq.o processore/irq.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/idt.o processore/idt.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/cpuid.o processore/cpuid.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/8259.o hw/8259.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/8253.o hw/8253.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/keyboard.o hw/keyboard.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o mem/fismem.o mem/fismem.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o io/io.o io/io.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/stdlib.o libc/stdlib.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/bitops.o libc/bitops.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/stdio.o libc/stdio.c
In file included from libc/stdio.c:2:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/string.o libc/string.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/task.o task/task.c
In file included from task/task.c:4:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/scheduler.o task/scheduler.c
In file included from task/scheduler.c:3:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/tss.o task/tss.c
gcc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o video.o video.c
ld -Bstatic --oformat binary -okernel.bin kernel.o processore/irq.o processore/idt.o processore/cpuid.o hw/825
9.o hw/8253.o hw/keyboard.o mem/fismem.o io/io.o libc/stdlib.o libc/bitops.o libc/stdio.o libc/string.o task/task.o task/scheduler.o task/tss.o video.o -Ttext 0x10000 -Map kernel.map


c:\djgpp\bin/ld.exe: warning: cannot find entry symbol start; defaulting to 00010000
processore/idt.o(.text+0x7a3):idt.c: undefined reference to `exec_irq'
make.exe: *** [kernel.bin] Error 1


Linux Make-LOG:


nasm -f bin ./boot/loader.asm -o bl.img
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o kernel.o kernel.c
In file included from kernel.c:19:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/irq.o processore/irq.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/idt.o processore/idt.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o processore/cpuid.o processore/cpuid.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/8259.o hw/8259.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/8253.o hw/8253.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o hw/keyboard.o hw/keyboard.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o mem/fismem.o mem/fismem.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o io/io.o io/io.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/stdlib.o libc/stdlib.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/bitops.o libc/bitops.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/stdio.o libc/stdio.c
In file included from libc/stdio.c:2:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o libc/string.o libc/string.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/task.o task/task.c
In file included from task/task.c:4:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/scheduler.o task/scheduler.c
In file included from task/scheduler.c:3:
header/libc/stdio.h:4: warning: conflicting types for built-in function `putchar'
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o task/tss.o task/tss.c
cc -nostdlib -fomit-frame-pointer -Wall -march=i386 -I./header -I./header/libc   -c -o video.o video.c
ld -Bstatic --oformat binary -okernel.bin kernel.o processore/irq.o processore/idt.o processore/cpuid.o hw/8259.o hw/8253.o hw/keyboard.o mem/fismem.o io/io.o libc/stdlib.o libc/bitops.o libc/stdio.o libc/string.o task/task.o task/scheduler.o task/tss.o video.o -Ttext 0x10000 -Map kernel.map
cat bl.img kernel.bin > uos.img


Kann mir da jemand helfen??
Vielen Dank im Vorraus!
Mfg
najjannaj
64
Offtopic / Verwaltungstool für C-Dateien!
« am: 23. May 2004, 18:43 »
HI,
Kennt einer ein Programm mit dem ich meine in ASM und C programmierten Dateien besser im Überblick behalten kann, als sie jedesmal einzeln zu öffnen usw.. Ich suche ein Tool wie z.b. DEV-C++ (http://www.bloodshed.net/)
Danke!
Liebe Grüße
najjannaj
65
OS-Design / mem.c Asm Hilfe
« am: 23. May 2004, 17:55 »
Vielen Dank! Werd gleich Testen und dann nochmal bescheid sagen!
Danke!
66
OS-Design / mem.c Asm Hilfe
« am: 21. May 2004, 10:29 »
Ja, ich benutze gcc und ld, sowie nasm. Wo trag ich die Register ein und wie leg ich diese fest??
Danke!
67
OS-Design / mem.c Asm Hilfe
« am: 20. May 2004, 19:44 »
Hi,
Hab folgendes Problem beim Kompilieren:

mem.c: In function `count_memory':
mem.c:26: Invalid `asm' statement:
mem.c:26: fixed or forbidden register 0 (ax) was spilled for class AREG.
mem.c:34: Invalid `asm' statement:
mem.c:34: fixed or forbidden register 0 (ax) was spilled for class AREG.
mem.c:63: Invalid `asm' statement:
mem.c:63: fixed or forbidden register 0 (ax) was spilled for class AREG.

Hab keinen Plan warum das jetzt nicht funktioniert! Kann mir einer von euch Helfen???
Hier die "mem.c":

#include "include\io.h"
#include "include\mem.h"

unsigned long mem_end, bse_end;

void count_memory(void)
 {
         register unsigned long *mem;
         unsigned long mem_count, a;
         unsigned short  memkb;
         unsigned char   irq1, irq2;
         unsigned long cr0;

         /* save IRQ's */
         irq1=inportb(0x21);
         irq2=inportb(0xA1);

         /* kill all irq's */
         outportb(0x21, 0xFF);
         outportb(0xA1, 0xFF);

         mem_count=0;
         memkb=0;

         // store a copy of CR0
         __asm__ __volatile("movl %%cr0, %%eax":"=a"(cr0)::"eax");

         // invalidate the cache
         // write-back and invalidate the cache
         __asm__ __volatile__ ("wbinvd");

         // plug cr0 with just PE/CD/NW
         // cache disable(486+), no-writeback(486+), 32bit mode(386+)
         __asm__ __volatile__("movl %%eax, %%cr0" :: "a" (cr0 | 0x00000001 | 0x40000000 | 0x20000000) : "eax");

         do
         {
                 memkb++;
                 mem_count+=1024*1024;
                 mem=(unsigned long *)mem_count;

                 a=*mem;

                 *mem=0x55AA55AA;
                 
                 // the empty asm calls tell gcc not to rely on whats in its registers
                 // as saved variables (this gets us around GCC optimisations)
                 asm("":::"memory");
                 if(*mem!=0x55AA55AA)
                         mem_count=0;
                 else
                 {
                         *mem=0xAA55AA55;
                         asm("":::"memory");
                         if(*mem!=0xAA55AA55)
                                 mem_count=0;
                 }

                 asm("":::"memory");
                 *mem=a;
         }while(memkb<4096 && mem_count!=0);

         __asm__ __volatile__("movl %%eax, %%cr0" :: "a" (cr0) : "eax");

         mem_end=memkb<<20;
         mem=(unsigned long *)0x413;
         bse_end=((*mem)&0xFFFF)<<6;

         outportb(0x21, irq1);
         outportb(0xA1, irq2);
 }



und hier die "mem.h":

#ifndef MEM_INCLUDE
#define MEM_INCLUDE

extern unsigned long mem_end, bse_end;

void count_memory();

#endif
68
Lowlevel-Coding / Os-Tester gesucht!
« am: 03. May 2004, 15:07 »
Also ich fänd es auch besser wenn es allen hier im Forum zur verfügung gestellt wird! Aber ich bin auch als Tester dabei!
Link???

jan.loebel@web.de
69
Das Wiki / Neues Mag WANN?????
« am: 20. April 2004, 09:25 »
HI, Wollte nur mal nachfragen wann das neue Mag erscheinen wird? Und ob es überhaupt ein neues geben wird?????
Liebe Grüße
Najjannaj
70
Offtopic / Borland Turbo C++
« am: 16. April 2004, 12:26 »
Hi,
Hab folgende Befehlszeile in Borland Turbo C++ V3.0 verwendet:
tcc -c -r- -mt -2 kernel.cpp >> NULL

Ich glaube ich weiß noch was folgende Befehle waren:
-c = Compile only
-r = Register variables
-mt = Tiny Model
-2 = ?????????
jetzt kann ich nirgendwo die Version 3.0 finden! Kann mir jemand sagen wo ich Borland Turbo C++ V3.0 herbekomme, oder mir die Befehlszeile in einen aktuellen eines C++ Compilers wandeln! Danke!
71
Lowlevel-Coding / Bootsector Diskettte Formatieren?
« am: 14. April 2004, 13:34 »
Ja, wie es aufgebaut ist schon! Aber nicht wie ich meinen Bootloader reinbekomm und das Dateisystem erhalten kann! Davon standt da nichts!
72
OS-Design / C Befehle??
« am: 14. April 2004, 13:27 »
Printf habe ich wie folgt hinbekommen:


;Datei ist Video.c

void printf(const char *_message)
{
  unsigned short offset;
  unsigned long i;
  unsigned char *vidmem = (unsigned char *)0xB8000;

  out(0x3D4, 14);
  offset = in(0x3D5) << 8;
  out(0x3D4, 15);
  offset |= in(0x3D5);

  vidmem += offset*2;
  i = 0;
  while (_message != 0) {
    *vidmem = _message[i++];
    vidmem += 2;
  }

  offset += i;
  out(0x3D5, (unsigned char)(offset));
  out(0x3D4, 14);
  out(0x3D5, (unsigned char)(offset >> 8));
}



Jetzt fehlt mir noch das "scanf" kann mir da jemand helfen??? BITTE!
73
OS-Design / C Befehle??
« am: 14. April 2004, 13:16 »
Neues Problem!
Ich hab mir nen Bootsector mit Assambler und Kernel mit C geschrieben und linken usw klappt alles! Nur jetzt will ich folgendes verwirklichen:

int anzahl;
printf ("\nBitte eine Integer-Zahl eingeben : ");  
scanf ("%d",&anzahl);

printf ("\n\nSie gaben %d ein\n",anzahl);

Er kennt aber die Befehle printf und scanf nicht! Wie kann ich die nun mit einbinden??
Vielen Dank!
74
Lowlevel-Coding / Bootsector Diskettte Formatieren?
« am: 14. April 2004, 12:45 »
Das versteh ich nicht ganz! Kannst du mir erklären wie ich das zu schreiben hab! Ein Beispiel wär nicht schlecht! Kenn mich mit Assambler nicht so gut aus deshalb wäre ja der Bootloader das richtige! Ich versteh nicht wo und wie ich die Bytes auslesen soll! Und wo ich die dannach in meine *.asm einsetzen soll!
Danke trozdem!
75
Lowlevel-Coding / Bootsector Diskettte Formatieren?
« am: 14. April 2004, 10:09 »
Hi,
Erstmal Super Magazin! Echt spitze! Für die Zukunft würd ich mir noch mehr Beispiele wie eine Konsole (Weiß das es das schon im ResourceCenter gibt aber wie binde ich das ganze ein??)!!
Jetzt zur Eigentlichen Frage! Hab den Bootloader geschrieben und er funktioniert eigentlich soweit das er sagt "File not Found." Weil auf der Diskette keine Kernel.bin vorhanden ist! Wenn ich aber jetzt eine auf die Diskette kopieren will, kommt immer "Diskette Foramtieren!" Hab den Bootloader mit rawrite auf die Diskette geschrieben und wie kann ich nun die Diskette so machen das ich da auch noch Daten draufbekomm, troz Bootlaoders????
Vielen Dank im Vorraus!
Mfg
najjannaj
Seiten: 1 2 3 [4]

Einloggen