Autor Thema: Paging  (Gelesen 3761 mal)

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« am: 19. February 2005, 22:10 »
hallo,

ich hab mich nun entschlossen, gleich paging zu benutzen. ich hab mir also gedacht, einfach mal den ganzen speicher zu mappen, sodass alles geordnet ist. ich erstelle also ein pagedir an 0x3000 und ein paar tabellen an 0x100000. das mache ich hiermit:


mov eax,0x00003000
mov cr3,eax
mov edi,eax
mov ecx,0x00000400
mov eax,0x00100005
SetUpPageDir:
stosd
add eax,0x00001000
loop SetUpPageDir
mov edi,0x00100000
mov eax,0x00000005
mov ecx,0x00100000
SetUpPageTable:
stosd
add eax,0x00001000
loop SetUpPageTable
mov eax,cr0
or eax,10000000000000000000000000000000b
mov cr0,eax                        

danach ist also paging aktiv und der speicher gepaged. jetzt merke ich aber, dass das ding bei einem funktionscall nicht das macht, was es soll... könnte es an [org 0x500] liegen, und wie kann man das wieder aus machen?

danke,
J!N
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #1 am: 20. February 2005, 11:29 »
okay, hab herausgefunden, dass es kein falscher call sondern ein dazwischengespieltes int war, aber trotzdem geht mein code nicht. hab ihn verbessert (mit gesetztem R/W-Bit) zu dem hier:


mov eax,0x00003000                             ;+
mov cr3,eax                                    ;|
mov edi,eax                                    ;|
mov ecx,0x00000400                             ;|
mov eax,0x00100007                             ;|
SetUpPageDir:                                  ;|
stosd                                          ;|
add eax,0x00001000                             ;|
loop SetUpPageDir                              ;\PDir & PTables einrichten
mov edi,0x00100000                             ;/und Paging aktivieren
mov eax,0x00000007                             ;|
mov ecx,0x00100000                             ;|
SetUpPageTable:                                ;|
stosd                                          ;|
add eax,0x00001000                             ;|
loop SetUpPageTable                            ;|
mov eax,cr0                                    ;|
or eax,10000000000000000000000000000000b       ;|
mov cr0,eax                                    ;+      


und jetzt crasht er bei einem popf in einer funktion... ich kapiers einfach nicht.
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #2 am: 20. February 2005, 13:48 »
Zitat von: blueXseven
du solltest das U/S bit nicht setzten sonst sind deine pages als "user privilege level" markiert


ich dachte mit gesetztem U/S-bit dürften nur proggys mit privileg 0-2 zugreifen können... aber das is ja egal, weil mein kernel is 0, oda?

EDIT: geht immernoch net... das ding bricht immer bei einem popf ab.
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #3 am: 20. February 2005, 14:29 »
das hier is die bochslogfile:


00000000000i[     ] Bochs x86 Emulator 2.1.1
00000000000i[     ]   February 08, 2004
00000000000i[     ] System configuration
00000000000i[     ]   processors: 1
00000000000i[     ]   A20 line support: yes
00000000000i[     ]   APIC support: no
00000000000i[     ] CPU configuration
00000000000i[     ]   level: 5
00000000000i[     ]   fpu support: yes
00000000000i[     ]   paging support: yes, tlb enabled: yes
00000000000i[     ]   mmx support: yes
00000000000i[     ]   sse support: no
00000000000i[     ]   v8086 mode support: yes
00000000000i[     ]   3dnow! support: no
00000000000i[     ]   PAE support: no
00000000000i[     ]   PGE support: no
00000000000i[     ]   PSE support: no
00000000000i[     ]   x86-64 support: no
00000000000i[     ]   SEP support: no
00000000000i[     ] Optimization configuration
00000000000i[     ]   Guest2HostTLB support: yes
00000000000i[     ]   RepeatSpeedups support: yes
00000000000i[     ]   Icache support: yes
00000000000i[     ]   Host Asm support: yes
00000000000i[MEM0 ] allocated memory at 013B0020. after alignment, vector=013B1000
00000000000i[MEM0 ] 256,00MB
00000000000i[MEM0 ] rom at 0xf0000/65536 ('BIOS-bochs-latest')
00000000000i[MEM0 ] rom at 0xc0000/29664 ('VGABIOS-lgpl-latest')
00000000000i[CMOS ] Using local time for initial clock
00000000000i[CMOS ] Setting initial clock to: Sun Feb 20 14:24:38 2005 (time0=1108905878)
00000000000i[DMA  ] channel 4 used by cascade
00000000000i[DMA  ] channel 2 used by Floppy Drive
00000000000i[FDD  ] fd0: 'HighOS/a.floppy' ro=0, h=2,t=80,spt=18
00000000000i[FDD  ] fd1: 'HighOS/b.floppy' ro=0, h=2,t=80,spt=18
00000000000i[WGUI ] IME disabled
00000000000i[KMAP ] Loading keymap from 'keymaps\sdl-pc-de.map'
00000000000i[KMAP ] Loaded 178 symbols
00000000000i[VGA  ] interval=30000
00000000000i[VGA  ] VBE Bochs Display Extension Enabled
00000000000i[     ] init_mem of 'harddrv' plugin device by virtual method
00000000000i[     ] init_mem of 'keyboard' plugin device by virtual method
00000000000i[     ] init_mem of 'serial' plugin device by virtual method
00000000000i[     ] init_mem of 'parallel' plugin device by virtual method
00000000000i[     ] init_mem of 'extfpuirq' plugin device by virtual method
00000000000i[     ] init_mem of 'gameport' plugin device by virtual method
00000000000i[     ] init_dev of 'harddrv' plugin device by virtual method
00000000000i[HD   ] Boot device will be 'a'
00000000000i[HD   ] Floppy boot signature check is enabled
00000000000i[     ] init_dev of 'keyboard' plugin device by virtual method
00000000000i[KBD  ] will paste characters every 1000 keyboard ticks
00000000000i[     ] init_dev of 'serial' plugin device by virtual method
00000000000i[SER  ] com1 at 0x03f8 irq 4
00000000000i[     ] init_dev of 'parallel' plugin device by virtual method
00000000000i[PAR  ] parallel port 1 at 0x378 irq 7
00000000000i[     ] init_dev of 'extfpuirq' plugin device by virtual method
00000000000i[     ] init_dev of 'gameport' plugin device by virtual method
00000000000i[     ] reset of 'harddrv' plugin device by virtual method
00000000000i[     ] reset of 'keyboard' plugin device by virtual method
00000000000i[     ] reset of 'serial' plugin device by virtual method
00000000000i[     ] reset of 'parallel' plugin device by virtual method
00000000000i[     ] reset of 'extfpuirq' plugin device by virtual method
00000000000i[     ] reset of 'gameport' plugin device by virtual method
00000000000i[     ] set SIGINT handler to bx_debug_ctrlc_handler
00000004325i[BIOS ]  rombios.c,v 1.103.2.2 2004/02/02 22:39:22 cbothamy Exp $
00000500048i[KBD  ] reset-disable command received
00000703347i[VBIOS] VGABios $Id: vgabios.c,v 1.38 2003/11/05 23:21:19 cbothamy Exp $
00000703578i[VGA  ] VBE known Display Interface b0c2
00000703663i[VGA  ] VBE known Display Interface b0c0
00000706608i[VBIOS] VBE Bios $Id: vbe.c,v 1.35 2003/11/03 20:57:01 vruppert Exp $
00000706723i[VGA  ] VBE known Display Interface b0c2
00000750000i[WGUI ] dimension update x=640 y=400 fontheight=16 fontwidth=8 bpp=8
00000900000i[WGUI ] dimension update x=720 y=400 fontheight=16 fontwidth=9 bpp=8
00000909059i[VGA  ] VBE known Display Interface b0c2
00000995970e[HD   ] device set to 0 which does not exist
00000996263e[HD   ] device set to 1 which does not exist
00001269955i[VGA  ] VBE known Display Interface b0c2
00001271396i[VGA  ] VBE known Display Interface b0c2
00001272493i[VGA  ] VBE known Display Interface b0c2
00001272865i[VGA  ] VBE set xres (1024)
00001272907i[VGA  ] VBE set yres (768)
00001272951i[VGA  ] VBE set bpp (24)
00001273038i[VGA  ] VBE enabling x 1024, y 768, bpp 24, 2359296 bytes visible
00001273038i[WGUI ] dimension update x=1024 y=768 fontheight=0 fontwidth=0 bpp=24
00001277122i[FDD  ] partial read() on floppy image returns 392/512
00001277634i[FDD  ] read() on floppy image returns 0
00001278146i[FDD  ] read() on floppy image returns 0
00001278658i[FDD  ] read() on floppy image returns 0
00001279170i[FDD  ] read() on floppy image returns 0
00001279682i[FDD  ] read() on floppy image returns 0
00001280194i[FDD  ] read() on floppy image returns 0
00001280706i[FDD  ] read() on floppy image returns 0
00001281218i[FDD  ] read() on floppy image returns 0
00001281730i[FDD  ] read() on floppy image returns 0
00001282242i[FDD  ] read() on floppy image returns 0
00004433477i[CPU  ] -----------------------------------
00004433477i[CPU  ] selector->index*8 + 7 = 3423
00004433477i[CPU  ] gdtr.limit = 55
00004433477i[CPU  ] fetch_raw_descriptor: GDT: index > limit
00004433477i[CPU  ] | EAX=00000000  EBX=e000174d  ECX=000bfc00  EDX=00000300
00004433477i[CPU  ] | ESP=0009ffdb  EBP=00000000  ESI=00000b2c  EDI=00101000
00004433477i[CPU  ] | IOPL=0 NV UP DI PL ZR NA PE NC
00004433477i[CPU  ] | SEG selector     base    limit G D
00004433477i[CPU  ] | SEG sltr(index|ti|rpl)     base    limit G D
00004433477i[CPU  ] |  DS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  ES:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  FS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  GS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  SS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  CS:0008( 0001| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] | EIP=000008c1 (000008c0)
00004433477i[CPU  ] | CR0=0xe0000011 CR1=0x00000000 CR2=0x00101000
00004433477i[CPU  ] | CR3=0x00003000 CR4=0x00000000
00004433477i[CPU  ] >> cf
00004433477i[CPU  ] >> : iret
00004433477i[CPU  ] -----------------------------------
00004433477i[CPU  ] -----------------------------------
00004433477i[CPU  ] selector->index*8 + 7 = 2247
00004433477i[CPU  ] gdtr.limit = 55
00004433477i[CPU  ] fetch_raw_descriptor: GDT: index > limit
00004433477i[CPU  ] | EAX=00000000  EBX=e000174d  ECX=000bfc00  EDX=00000300
00004433477i[CPU  ] | ESP=0009ffcb  EBP=00000000  ESI=00000b2c  EDI=00101000
00004433477i[CPU  ] | IOPL=0 NV UP DI PL ZR NA PE NC
00004433477i[CPU  ] | SEG selector     base    limit G D
00004433477i[CPU  ] | SEG sltr(index|ti|rpl)     base    limit G D
00004433477i[CPU  ] |  DS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  ES:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  FS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  GS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  SS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  CS:0008( 0001| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] | EIP=000008c0 (000008bf)
00004433477i[CPU  ] | CR0=0xe0000011 CR1=0x00000000 CR2=0x00101000
00004433477i[CPU  ] | CR3=0x00003000 CR4=0x00000000
00004433477i[CPU  ] >> cf
00004433477i[CPU  ] >> : iret
00004433477i[CPU  ] -----------------------------------
00004433477p[CPU  ] >>PANIC<< fetch_raw_descriptor: LDTR.valid=0
00004433477i[SYS  ] Last time is 1108905878
00004433477i[CPU  ] protected mode
00004433477i[CPU  ] CS.d_b = 32 bit
00004433477i[CPU  ] SS.d_b = 32 bit
00004433477i[CPU  ] | EAX=00000000  EBX=e000174d  ECX=000bfc00  EDX=00000300
00004433477i[CPU  ] | ESP=0009ffbb  EBP=00000000  ESI=00000b2c  EDI=00101000
00004433477i[CPU  ] | IOPL=0 NV UP DI PL ZR NA PE NC
00004433477i[CPU  ] | SEG selector     base    limit G D
00004433477i[CPU  ] | SEG sltr(index|ti|rpl)     base    limit G D
00004433477i[CPU  ] |  DS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  ES:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  FS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  GS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  SS:0010( 0002| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] |  CS:0008( 0001| 0|  0) 00000000 00000c00 1 1
00004433477i[CPU  ] | EIP=000008c0 (000008bf)
00004433477i[CPU  ] | CR0=0xe0000011 CR1=0x00000000 CR2=0x00101000
00004433477i[CPU  ] | CR3=0x00003000 CR4=0x00000000
00004433477i[CPU  ] >> cf
00004433477i[CPU  ] >> : iret
00004433477i[CTRL ] quit_sim called with exit code 1


und das is die debuggerlogfile:


Next at t=0
(0) context not implemented because BX_HAVE_HASH_MAP=0
[0x000ffff0] f000:fff0 (unk. ctxt): jmp f000:e05b             ; ea5be000f0
<bochs:1> lbreak 0x500
<bochs:2> c
(0) Breakpoint 1, 0x500 in ?? ()
Next at t=1283222
(0) [0x00000500] 0008:00000500 (unk. ctxt): mov dl, byte ptr [ds:0x6a9] ; 8815a9060000
<bochs:3> u /100
00000500: (                    ): mov dl, byte ptr [ds:0x6a9] ; 8815a9060000
00000506: (                    ): mov byte ptr [ds:0x6be], al ; a2be060000
0000050b: (                    ): opsize mov word ptr [ds:0x6bf], cx ; 66890dbf060000
00000512: (                    ): push ebx                  ; 53
00000513: (                    ): cmp al, 0x18              ; 3c18
00000515: (                    ): jz 0x53c                  ; 7425
00000517: (                    ): opsize cmp cx, 0x118      ; 6681f91801
0000051c: (                    ): jz 0x52d                  ; 740f
0000051e: (                    ): mov dword ptr [ds:0x6ba], 0x1d4c00 ; c705ba060000004c1d00
00000528: (                    ): jmp 0x561                 ; e934000000
0000052d: (                    ): mov dword ptr [ds:0x6ba], 0x300000 ; c705ba06000000003000
00000537: (                    ): jmp 0x561                 ; e925000000
0000053c: (                    ): opsize cmp cx, 0x118      ; 6681f91801
00000541: (                    ): jz 0x552                  ; 740f
00000543: (                    ): mov dword ptr [ds:0x6ba], 0x15f900 ; c705ba06000000f91500
0000054d: (                    ): jmp 0x561                 ; e90f000000
00000552: (                    ): mov dword ptr [ds:0x6ba], 0x240000 ; c705ba06000000002400
0000055c: (                    ): jmp 0x561                 ; e900000000
00000561: (                    ): pop ebx                   ; 5b
00000562: (                    ): mov dword ptr [ds:0x6b6], ebx ; 891db6060000
00000568: (                    ): opsize cmp word ptr [ds:0x6bf], 0x118 ; 66813dbf0600001801
00000571: (                    ): jz 0x58a                  ; 7417
00000573: (                    ): opsize mov word ptr [ds:0x6c1], 0x320 ; 66c705c10600002003
0000057c: (                    ): opsize mov word ptr [ds:0x6c3], 0x258 ; 66c705c30600005802
00000585: (                    ): jmp 0x59c                 ; e912000000
0000058a: (                    ): opsize mov word ptr [ds:0x6c1], 0x400 ; 66c705c10600000004
00000593: (                    ): opsize mov word ptr [ds:0x6c3], 0x300 ; 66c705c30600000003
0000059c: (                    ): lgdt [ds:0x6f4]           ; 0f0115f4060000
000005a3: (                    ): mov eax, 0x10             ; b810000000
000005a8: (                    ): mov ds, ax                ; 8ed8
000005aa: (                    ): mov es, ax                ; 8ec0
000005ac: (                    ): mov fs, ax                ; 8ee0
000005ae: (                    ): mov gs, ax                ; 8ee8
000005b0: (                    ): mov ss, ax                ; 8ed0
000005b2: (                    ): mov esi, 0x72c            ; be2c070000
000005b7: (                    ): mov edi, 0x2700           ; bf00270000
000005bc: (                    ): mov ecx, 0x100            ; b900010000
000005c1: (                    ): rep movs dword ptr [edi], dword ptr [esi] ; f3a5
000005c3: (                    ): lidt [ds:0x8ac]           ; 0f011dac080000
000005ca: (                    ): mov edi, 0x2f00           ; bf002f0000
000005cf: (                    ): mov ecx, 0x20             ; b920000000
000005d4: (                    ): mov eax, 0x0              ; b800000000
000005d9: (                    ): rep stos dword ptr [edi], eax ; f3ab
000005db: (                    ): mov edi, 0x2f00           ; bf002f0000
000005e0: (                    ): mov ecx, 0x2f             ; b92f000000
000005e5: (                    ): mov eax, 0xffffffff       ; b8ffffffff
000005ea: (                    ): rep stosb byte ptr [edi], al ; f3aa
000005ec: (                    ): mov al, 0x11              ; b011
000005ee: (                    ): out 0x20, al              ; e620
000005f0: (                    ): out 0xa0, al              ; e6a0
000005f2: (                    ): mov al, 0x20              ; b020
000005f4: (                    ): out 0x21, al              ; e621
000005f6: (                    ): mov al, 0x28              ; b028
000005f8: (                    ): out 0xa1, al              ; e6a1
000005fa: (                    ): mov al, 0x4               ; b004
000005fc: (                    ): out 0x21, al              ; e621
000005fe: (                    ): mov al, 0x2               ; b002
00000600: (                    ): out 0xa1, al              ; e6a1
00000602: (                    ): mov al, 0x1               ; b001
00000604: (                    ): out 0x21, al              ; e621
00000606: (                    ): out 0xa1, al              ; e6a1
00000608: (                    ): mov al, 0x20              ; b020
0000060a: (                    ): out 0xa0, al              ; e6a0
0000060c: (                    ): out 0x20, al              ; e620
0000060e: (                    ): mov al, 0x0               ; b000
00000610: (                    ): out 0x21, al              ; e621
00000612: (                    ): out 0xa1, al              ; e6a1
00000614: (                    ): opsize mov bx, 0x174d     ; 66bb4d17
00000618: (                    ): in al, 0x61               ; e461
0000061a: (                    ): test al, 0x3              ; a803
0000061c: (                    ): jnz 0x626                 ; 7508
0000061e: (                    ): or al, 0x3                ; 0c03
00000620: (                    ): out 0x61, al              ; e661
00000622: (                    ): mov al, 0xb6              ; b0b6
00000624: (                    ): out 0x43, al              ; e643
00000626: (                    ): mov bl, al                ; 88d8
00000628: (                    ): out 0x42, al              ; e642
0000062a: (                    ): mov bh, al                ; 88f8
0000062c: (                    ): out 0x42, al              ; e642
0000062e: (                    ): mov eax, 0x3000           ; b800300000
00000633: (                    ): mov cr3, eax              ; 0f22d8
00000636: (                    ): mov edi, eax              ; 89c7
00000638: (                    ): mov ecx, 0x400            ; b900040000
0000063d: (                    ): mov eax, 0x100003         ; b803001000
00000642: (                    ): stos dword ptr [edi], eax ; ab
00000643: (                    ): add eax, 0x1000           ; 0500100000
00000648: (                    ): loop 0x642                ; e2f8
0000064a: (                    ): mov edi, 0x100000         ; bf00001000
0000064f: (                    ): mov eax, 0x3              ; b803000000
00000654: (                    ): mov ecx, 0x100000         ; b900001000
00000659: (                    ): stos dword ptr [edi], eax ; ab
0000065a: (                    ): add eax, 0x1000           ; 0500100000
0000065f: (                    ): loop 0x659                ; e2f8
00000661: (                    ): mov eax, cr0              ; 0f20c0
00000664: (                    ): or eax, 0x80000000        ; 0d00000080
00000669: (                    ): mov cr0, eax              ; 0f22c0
0000066c: (                    ): sti                       ; fb
0000066d: (                    ): call 0xd45                ; e8d3060000
00000672: (                    ): mov esi, 0x6e2            ; bee2060000
00000677: (                    ): mov ebx, 0xff00           ; bb00ff0000
<bochs:4> lbreak 0xd45
<bochs:5> c
(0) Breakpoint 2, 0xd45 in ?? ()
Next at t=4432444
(0) [0x00000d45] 0008:00000d45 (unk. ctxt): push edi                  ; 57
<bochs:6> s
Next at t=4432445
(0) [0x00000d46] 0008:00000d46 (unk. ctxt): push ecx                  ; 51
<bochs:7> s
Next at t=4432446
(0) [0x00000d47] 0008:00000d47 (unk. ctxt): push eax                  ; 50
<bochs:8> s
Next at t=4432447
(0) [0x00000d48] 0008:00000d48 (unk. ctxt): pushf                     ; 9c
<bochs:9> s
Next at t=4432448
(0) [0x00000d49] 0008:00000d49 (unk. ctxt): mov ecx, dword ptr [ds:0x6ba] ; 8b0dba060000
<bochs:10> s
Next at t=4432449
(0) [0x00000d4f] 0008:00000d4f (unk. ctxt): mov edi, dword ptr [ds:0x6b2] ; 8b3db2060000
<bochs:11> s
Next at t=4432450
(0) [0x00000d55] 0008:00000d55 (unk. ctxt): shr ecx, 0x2              ; c1e902
<bochs:12> s
Next at t=4432451
(0) [0x00000d58] 0008:00000d58 (unk. ctxt): cld                       ; fc
<bochs:13> u /10
00000d58: (                    ): cld                       ; fc
00000d59: (                    ): xor eax, eax              ; 31c0
00000d5b: (                    ): rep stos dword ptr [edi], eax ; f3ab
00000d5d: (                    ): popf                      ; 9d
00000d5e: (                    ): pop eax                   ; 58
00000d5f: (                    ): pop ecx                   ; 59
00000d60: (                    ): pop edi                   ; 5f
00000d61: (                    ): retn                      ; c3
00000d62: (                    ): push edi                  ; 57
00000d63: (                    ): push esi                  ; 56
<bochs:14> lbreak 0xd5d
<bochs:15> c


nach dem letzten "c" crasht er dann mit folgender meldung: "fetch_raw_descriptor: LTDR.valid=0"
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #4 am: 20. February 2005, 14:51 »
problem gelöst... ich dummkopf hab die tables in den speicher gemacht, in dem der videobuffer war, und der wurde dann überschrieben in clearscreen und dann war die tables kaput und popf ging nicht... sorry, für die mühen, die ich gemacht hab!
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

 

Einloggen