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 - Relbmessa

Seiten: 1 2 [3] 4
41
Lowlevel-Coding / Re: Problem mit Boot
« am: 17. April 2012, 09:58 »
Hallo Kev5454,
deine asm lässt sich mit realer Hardware von Floppy und auch USB-Stick booten. :evil:

Ich vermute mal dass der Fehler durch Bochs selbst verursacht wird.
Ich kenne mich mit Bochs aber nicht aus, da ich lieber mit realer Hardware arbeite.
Du solltest also auch die Einstellungen und Version von Bochs noch mal prüfen.

Gruss
Relbmessa 
42
Lowlevel-Coding / SN9C202+OV9650
« am: 16. April 2012, 20:04 »
Hallo,
ich kämpfe gerade mit einer Webcam. (SN9C202+OV9650)
Bei der Enumeration komme ich aber nur bis zum setzen Set_Address. :-P :?

Hat vielleicht einer eine Specification oä. für den SN9C202.
Die Specification SN9C201 ist leider nur ähnlich, und mein suchen war bisher
leider erfolglos.

Schon Dank im voraus für Deine (Eure) Aufmerksamkeit.

Gruß
Relbmessa
43
Lowlevel-Coding / Re: bInterfaceProtocol 80
« am: 31. March 2012, 18:39 »
Danke für die schnelle Antwort.

Deine Quellenangaben bin ich schon durch!! :-D

Dein Hinweis mit dem Hex->Dezimal, das wird es wohl wieder mal gewesen sein. :evil: :evil:

Dann habe ich somit alles zusammen.

Gruß
Relbmessa
44
Lowlevel-Coding / bInterfaceProtocol 80
« am: 31. March 2012, 14:59 »
Hallo,
ich suche Informationen Bulk only 80 (zip).
Specification oder ä.
Finde im Moment leider nichts!

Kurze Antwort zu den Unterschieden zwischen bIterfaceProtocol 50 und 80 würde mir auch weiter
helfen.
Schon jetzt, danke für die Aufmerksamkeit!!  :-D

Gruß
Relbmessa
45
Lowlevel-Coding / Re: Eine Antwort UHCI Setup-Control
« am: 29. February 2012, 12:42 »
Hallo
danke für die Vermutung.
Ich bin noch auf der suche nach dem Fehler.
Wie gesagt , es ist der erste Entwurf.

Gruß
Relbmessa

PS

Habe den Fehler beim Auslesen der ersten 8 Byte Get_Deskriptor gefunden.
Ohne Status Phase geht es halt nicht.
TD -> Setup DATA0
TD -> IN       DATA1
TD->  Out    DATA1
so geht es!
46
Lowlevel-Coding / Re: Eine Antwort UHCI Setup-Control
« am: 26. February 2012, 22:28 »
Hallo
vielleicht habe ich mich falsch ausgedrückt?
Melden tun sich alle Geräte -> nur Acer und Cruzer muss ich anders befragen. (siehe Anfang)
Darüber wundere ich mich-> den ich dachte die erste Anfrage ist immer gleich ??

Gruß
Relbmessa
47
Lowlevel-Coding / Re: Eine Antwort UHCI Setup-Control
« am: 26. February 2012, 21:17 »
Hallo

Mit gemeldet meine ich, dass mit der oben verwendeten Frame
der Geräte Deskriptor ausgelesen wird.(Erster Schritt der Enumeration)
Ich bin dabei für mein OS USB-Driver zu programieren.

Gruss
Relbmessa
48
Lowlevel-Coding / Re: Eine Antwort UHCI Setup-Control
« am: 26. February 2012, 17:10 »
Hallo rizor

Alle meine Geräte haben sich gemeldet.

zB

Philips USB DVD        058F:6387
8Giga Transcend        058F:6387
1Giga     dt.
4Giga Kingston          0951:1625
Lexar                         05DC:A400
ACER                         0204:6025
Cruzer                       0781:5406
Lexar Media 128MB  05DC:0080
USB Webcam            046D:08DA
USB-Floppy               057B:0000
Siemens USB Wlan   129B:1667
BrotherUSB Drucker 04F9:0037

und noch zwei usb Festplatten
Ergebnisse habe ich mit Linux abgeglichen.

Jetzt geht es zum zweiten Schritt der Enumeration

Gruss
Relbmessa 





 
49
Lowlevel-Coding / Eine Antwort UHCI Setup-Control
« am: 25. February 2012, 15:23 »
Hallo
Antwort zu UHCI Setup-Transfer

Eine Antwort – nicht die Antwort Setup (Control)

Erfragen Get_Deskriptor

Die von mir verwendet Frame: 


Nr.05_A
001  00021000 00021010     002  00021010 00021020     003  00021020 00021030
1Fra 00021004                   00021014                   00021024          
     00021008                   00021018                   00021028
     0002100C          BUF      0002101C          BUF      0002102C          BUF

004  00021030 00021040     005  00021040 00021052 ZQH 006  00021050 00021090 ZTD1
     00021034                   00021044          QH       00021054 00000001  IRQ         
     00021038                   00021048                   00021058
     0002103C          BUF      0002104C          BUF      0002105C          BUF

007  00021060 00021070     008  00021070 0021080     009  00021080 00021090
     00021064                   00021074                   00021084          
     00021068                   00021078                   00021088
     0002106C BUF               0002107C 00120118 BUF      0002108C 00120140 BUF

010  00021090 000210A0     011  000210A0 000210B0     012  000210B0 000210C0
TD1  00021094              TD2  000210A4              TD3  000210B4          
     00021098                   000210A8                   000210B8
     0002109C 00120118 BUF      000210AC 00120140 BUF    000210BC 00120168 BUF

013  000210C0 000210E2 ZQH 014  000210D0 000210E0     015  000210E0 00000001
TD4  000210C4                   000210D4              QH   000210E4 00000001         
     000210C8                   000210D8                   000210E8
     000210CC 00120190 BUF      000210DC          BUF      000210EC          BUF

;;;;;;;;;;----Vorbereitung für Control-Transfer----------------------------1.Einstellung
;-------------TD-1---------------------------------------------------------
    mov dword [0x00021094] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x00021098] , 0x00E0002D ;Reg 08-0Bh Token Setup -> 2Dh
    mov dword [0x0002109C] , 0x00120118 ;Buffer-Pointer TD1
;-------------TD-2---------------------------------------------------------
    mov dword [0x000210A4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210A8] , 0x02280069 ;Reg 08-0Bh Token DATA1 IN-> 69h
    mov dword [0x000210AC] , 0x00120140 ;Buffer-Pointer TD2
;----------------------------------------------------------------------------
;-------------TD-3-----------------------------------------------------------
    mov dword [0x000210B4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210B8] , 0x02200069 ;Reg 08-0Bh Token DATA0  IN -> 69h ????
    mov dword [0x000210BC] , 0x00120168 ;Buffer Pointer TD3
;----------------------------------------------------------------------------
;-------------TD-4-----------------------------------------------------------
    mov dword [0x000210C4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210C8] , 0x02280069 ;Reg 08-0Bh Token DATA1 IN-> 69h
    mov dword [0x000210CC] , 0x00120190 ;Buffer-Pointer TD4
;----------------------------------------------------------------------------
;---------Speicher-Einstellung-Buffer-Bereich erst mal Null------------------
    mov dword [0x00120118] , 0x01000680 ;Get_Deskriptor TD1
    mov dword [0x0012011C] , 0x00120000
;--------------------------------
    mov dword [0x00120140] , 0x0 ; TD2
    mov dword [0x00120144] , 0x0 ;
;-------------------------------
    mov dword [0x00120168] , 0x0 ; TD3
    mov dword [0x0012016C] , 0x0
;-------------------------------
    mov dword [0x00120190] , 0x0 ; TD4
    mov dword [0x00120194] , 0x0
;-------------------------------------------------------------------------
Frame-List Pointer

Code
;--------Frame List--TD-Pointer------------------ ----------------------------------------

;----------------------------------------------------------------------------------------
 
    mov eax , 0x00020000+4 ;+1 siehe Erster FLP /Ziel  Framme List
    mov ebx , 0x00023001 ;Inhalt Frame List -> Link -Pointer 
    mov ecx , 1024-1
Frame_List:
      mov [eax] , ebx
      add eax , 0x04 ;Abstand 4-Byte Frame Pointer
;      add ebx , 0x10 ;Abstand Link-Pointer 16-Byte (10h)
    loop Frame_List
;-------Link-Pointer-TD-1------------------------------------------------
      mov eax , 0x00021000 ;Ziel TD-2 Pointer
      mov ebx , 0x00021010 ;Link-Pointer
      mov ecx , 1024
Link_Pointer_1:
      mov [eax] , ebx
      add eax , 0x10
      add ebx , 0x10
    loop Link_Pointer_1

;--------------Frame-List-Pointer------------------------------------------------
     mov dword [0x00020000] , 0x00021000 ;Erster Frame-List-Pointer   
     mov dword [0x00020004] , 0x00021090 ;Zeiger 2
;---------------------------------------------------------------------------------
     mov dword [0x00020008] , 0x00021090 ;Zeiger 3


 Mit dieser Konfiguration melden sich die meisten Geräte

Ausnahmen bestätigen die Regel – Acer 1Giga und Cruzer 4Giga
melden sich meist nicht – keine Ahnung  warum??

Mit der folgenden Konfiguration habe ich dieses Problem gelöst

;;;;;;;;;;----Vorbereitung für Control-Transfer----------------------------
;-------------TD-1---------------------------------------------------------
    mov dword [0x00021094] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x00021098] , 0x00E0002D ;Reg 08-0Bh Token Setup -> 2Dh
    mov dword [0x0002109C] , 0x00120118 ;Buffer-Pointer TD1
;-------------TD-2---------------------------------------------------------
    mov dword [0x000210A4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210A8] , 0x02200069 ;Reg 08-0Bh Token DATA0 IN-> 69h
    mov dword [0x000210AC] , 0x00120140 ;Buffer-Pointer TD2
;----------------------------------------------------------------------------
;-------------TD-3-----------------------------------------------------------
    mov dword [0x000210B4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210B8] , 0x02280069 ;Reg 08-0Bh Token DATA1  IN -> 69h ????
    mov dword [0x000210BC] , 0x00120168 ;Buffer Pointer TD3
;----------------------------------------------------------------------------
;-------------TD-4-----------------------------------------------------------
    mov dword [0x000210C4] , 0x18800000 ;Reg 04-07h Control and Status
    mov dword [0x000210C8] , 0x02200069 ;Reg 08-0Bh Token DATA0 IN-> 69h
    mov dword [0x000210CC] , 0x00120190 ;Buffer-Pointer TD4
;----------------------------------------------------------------------------
;---------Speicher-Einstellung-Buffer-Bereich erst mal Null------------------
    mov dword [0x00120118] , 0x01000680 ;Get_Deskriptor TD1
    mov dword [0x0012011C] , 0x00120000
;--------------------------------
    mov dword [0x00120140] , 0x0 ; TD2
    mov dword [0x00120144] , 0x0 ;
;-------------------------------
    mov dword [0x00120168] , 0x0 ; TD3
    mov dword [0x0012016C] , 0x0
;-------------------------------
    mov dword [0x00120190] , 0x0 ; TD4
    mov dword [0x00120194] , 0x0
;-------------------------------------------------------------------------

Diskussion erwünscht , aber nicht Bedingung

Viel Spaß und Erfolg beim Programmieren

Relbmessa

PS
Wollte ein wenig Farbe in die Gestaltung bringen.
Wie Funktioniert das?-> ist aber nicht wichtig!!
50
Lowlevel-Coding / Re: Frage zu UHCI Setup Control Transfer
« am: 30. January 2012, 10:54 »
Hallo taljeth
danke der Nachfrage, ich arbeite lieber mit Hardware.

Relbmessa
51
Lowlevel-Coding / Re: Frage zu UHCI Setup Control Transfer
« am: 29. January 2012, 19:14 »
Hallo XanClic
danke für die schnelle Antwort. Ich werde deine Gedanken in meine Arbeit einfließen lassen.

Nur so viel:
die ersten drei TDs werden wohl bearbeitet, denn beim Auslesen erhalte ich ein Ergebnis.
Später dazu meher.Muß den Rest von dir erst mal bearbeiten

USB-Fehler kann ich nicht ausschließen, stehe ja noch ganz am Anfang:
Mir ist nur wichtig, das mein Ansatz nicht ganz falsch ist.
Die TDs stehe so in der Liste das die L-Pointer auf den nächsten TD zeigen
Ob der Aufbau so bleiben kann , weiß ich nicht?.     
 
Den letzten Punkt würde ich ausschließen ->habe das UHCI lowlevel wiki einfließen lassen

Die Umgebung ist mein kleines OS im Protected Mode mit P4
Die  Speicherbereiche lade ich mir zur Kontrolle  auf den BWS.
Der Stick ist Full-Speed - EHCI kommt erst viel viel später.   

Relbmessa

PS Activ Bit-23 ist gesetzt 18800000
52
Lowlevel-Coding / Frage zu UHCI Setup Control Transfer
« am: 29. January 2012, 17:10 »
Hallo
ich versuche gerade UHCI Programmierung  Control-Transfer  Setup(Control)

 ;SETUP TD

00025000 ;Link Pointer
18800000 ;Control/Status
00E0002D ;Len=8,DATA0 , Setup
00120118 ;Buffer Pointer

;DATA0 TD

00029000 ;Link Pointer
18800000 ;Control/Status
00E00069 ;Len=8,DATA0 , IN
00120140 ;Buffer Pointer

;DATA1 TD

0002D002 ;Link Pointer
18800000 ;Control/Status
00E80069 ;Len=0,DATA1 , IN
00120168 ;Buffer Pointer


;Buffer

  mov dword [0x00120118] , 0x80 ;Setup Packet
  mov dword [0x0012011C] , 0x08000000



Leider meldet sich der USB-Stick nicht

Mir geht es nur darum ob die Tds  und das Setup-Packet  richtig sind??
Vielleicht kann mir ja jemand einen Tipp geben.

Danke
Relbmessa
53
Lowlevel-Coding / Re: Frage zum Scheduling
« am: 29. December 2011, 23:14 »
Hallo,
ich dachte immer es heißt - Scheduler -

 Gruß
Relbmessa
54
Lyrisches Eck / Frohes Fest
« am: 24. December 2011, 10:53 »
Hallo Gemeinde
allen C-Feunden und Assembler-Vermeidern

Ein frohes Weihnachtsfest wünscht Euch

Relbmessa   :-D

 
55
Offtopic / Re: Hostingangebot
« am: 21. December 2011, 10:47 »
Hallo littlefox,
ist eine nette Geste.(find ich)
Übernimmst du da nicht aber etwas viel Verantwortung.
Ich hätte da immer Bedenken wegen der rechtlichen Seiten.

Gruß
Relbmessa
56
Softwareentwicklung / Re: OS-Dev mit Intelassembler
« am: 18. December 2011, 11:39 »
Hallo Buschpilot
Ich verstehe deine Frage nicht!
-Ich glaube nicht, dass sich Einer hinsetzt und die Unterschiede rausarbeitet.
-Für Dich wird es keine relevanten Unterschiede geben.
-Was sich unterscheidet sind die vielen kleinen Zusatzhilfen .(Pseudobefehle)
-Die Lizens unterscheidet sie auch!!!! :-o
Gruß
Relbmessa
57
Softwareentwicklung / Re: OS-Dev mit Intelassembler
« am: 18. December 2011, 11:09 »
Hallo Buschpilot
Ein paar mehr Grundlagen sind schon nötig!
ohne Fleiß usw.
Es gibt viele schöne Beispiele die man erst mal studieren sollte.

naja:
Und ein Laufwerk wird ja auch noch benötigt.
Hier ein kleines Beispiel mit NASM.
;NASM -> nasm -f bin -o boot.bin boot.asm

org 0x7C00 ; set up start address of bootloader
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; setup a stack and segment regs ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    xor ax, ax ;null
    mov ds, ax
    mov es, ax
    mov ss, ax
    mov sp, ax
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; read kernel from floppy disk ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    mov [bootdrive], dl ; boot drive stored by BIOS in DL.
                        ; we save it to [bootdrive] to play for safety.
load_kernel:
    xor ax, ax         ; mov ax, 0  => function "reset"
    int 0x13         
    jc load_kernel     ; trouble? try again

    mov bx, 0x8000     ; set up start address of kernel
    ; set parameters for reading function
    ; 8-bit-wise for better overview
    mov dl,[bootdrive] ; select boot drive
    mov al,1          ; read 1 sectors  >anzahl<
    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         

;;;;;;;;;;;;;;;;;;
; jump to kernel ;
;;;;;;;;;;;;;;;;;;
    jmp 0x0000:0x8000   ; address of kernel. "jmp bx" might also work.

;;;;;;;;
; data ;
;;;;;;;;
   bootdrive db 0    ; boot drive
   
    times 510-($-$$) hlt
    dw 0xAA55
 

Viel Spaß beim Üben
Gruß
Relbmessa
58
Softwareentwicklung / Re: OS-Dev mit Intelassembler
« am: 18. December 2011, 00:38 »
Zitat
Alternativ kannst du auch NASM benutzen, der macht Intelsyntax.

NASM kann ich auch empfehlen,dazu KWrite als Editor.

Gruß
Relbmessa
59
Softwareentwicklung / Re: OS-Dev mit Intelassembler
« am: 17. December 2011, 22:25 »
Hallo Buschpilot
ohne genaue Frage, keine Antwort möglich!
Ein paar Fakten sind schon nötig.
Auf welcher Plattform programmierst Du? Linux -Windows

Gruß
Relbmessa
60
Lowlevel-Coding / Re: Speicherzugriffe
« am: 12. December 2011, 12:53 »
Da werde ich wohl mit leben müsse !!

Relbmessa
Seiten: 1 2 [3] 4

Einloggen