flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
maslan 05 Jul 2005, 08:30
hello guys
i'm writing a lib to used in os construction, it just contain the function that must be written in assembly. when i set the IDT and loads it, GPF occurs, and bochs says the problem in the isr, but how isr works and prints the message in GPF ?. may be because of tss i didn't set one or so. i hope any body can revise my code and tell me the problem, i will really appreciate that. thanks alot ![]()
_________________ Maslan I'm searching for perfection so, even if u need portability u 've to use Assembly --- http://www.maslanlab.org --- http://libosdk.berlios.de http://maslanedit.sf.net http://maslancms.sf.net |
|||||||||||
![]() |
|
maslan 05 Jul 2005, 08:33
bochsout.txt
Code: 00000000000i[ ] Bochs x86 Emulator 2.2 00000000000i[ ] Build from CVS snapshot on May 28, 2005 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: yes 00000000000i[ ] x86-64 support: no 00000000000i[ ] SEP support: no 00000000000i[ ] Optimization configuration 00000000000i[ ] Guest2HostTLB support: no 00000000000i[ ] RepeatSpeedups support: no 00000000000i[ ] Icache support: no 00000000000i[ ] Host Asm support: yes 00000000000i[ ] Fast function calls: no 00000000000i[MEM0 ] allocated memory at 0x40366008. after alignment, vector=0x40367000 00000000000i[MEM0 ] 32.00MB 00000000000i[MEM0 ] rom at 0xf0000/65536 ('/usr/local/share/bochs/BIOS-bochs-latest') 00000000000i[MEM0 ] rom at 0xc0000/32768 ('/usr/local/share/bochs/VGABIOS-lgpl-latest') 00000000000i[CMOS ] Using local time for initial clock 00000000000i[CMOS ] Setting initial clock to: Tue Jul 5 11:03:22 2005 (time0=1120550602) 00000000000i[DMA ] channel 4 used by cascade 00000000000i[DMA ] channel 2 used by Floppy Drive 00000000000i[XGUI ] test_alloc_colors: 16 colors available out of 16 colors tried 00000000000i[XGUI ] font 8 wide x 16 high, display depth = 24 00000000000i[VGA ] interval=30000 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 'speaker' plugin device by virtual method 00000000000i[ ] init_dev of 'harddrv' plugin device by virtual method 00000000000i[HD ] HD on ata0-0: '/dev/hda' 'flat' mode 00000000000i[HD ] translation on ata0-0 set to 'lba' 00000000000i[HD ] Using boot sequence disk, none, none 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 0x0378 irq 7 00000000000i[ ] init_dev of 'extfpuirq' plugin device by virtual method 00000000000i[ ] init_dev of 'speaker' plugin device by virtual method 00000000000i[SPEAK] Open /dev/console successfully 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 'speaker' plugin device by virtual method 00000000000i[XGUI ] [x] Mouse off 00000004163i[BIOS ] rombios.c,v 1.138 2005/05/07 15:55:26 vruppert Exp $ 00000015000e[VGA ] character height = 1, skipping text update 00000030000e[VGA ] character height = 1, skipping text update 00000045000e[VGA ] character height = 1, skipping text update 00000060000e[VGA ] character height = 1, skipping text update 00000075000e[VGA ] character height = 1, skipping text update 00000090000e[VGA ] character height = 1, skipping text update 00000105000e[VGA ] character height = 1, skipping text update 00000120000e[VGA ] character height = 1, skipping text update 00000135000e[VGA ] character height = 1, skipping text update 00000150000e[VGA ] character height = 1, skipping text update 00000165000e[VGA ] character height = 1, skipping text update 00000180000e[VGA ] character height = 1, skipping text update 00000195000e[VGA ] character height = 1, skipping text update 00000210000e[VGA ] character height = 1, skipping text update 00000225000e[VGA ] character height = 1, skipping text update 00000240000e[VGA ] character height = 1, skipping text update 00000255000e[VGA ] character height = 1, skipping text update 00000270000e[VGA ] character height = 1, skipping text update 00000285000e[VGA ] character height = 1, skipping text update 00000300000e[VGA ] character height = 1, skipping text update 00000315000e[VGA ] character height = 1, skipping text update 00000330000e[VGA ] character height = 1, skipping text update 00000330070i[KBD ] reset-disable command received 00000345000e[VGA ] character height = 1, skipping text update 00000360000e[VGA ] character height = 1, skipping text update 00000390000e[VGA ] character height = 1, skipping text update 00000405000e[VGA ] character height = 1, skipping text update 00000420000e[VGA ] character height = 1, skipping text update 00000435000e[VGA ] character height = 1, skipping text update 00000450000e[VGA ] character height = 1, skipping text update 00000451783i[VBIOS] VGABios $Id: vgabios.c,v 1.61 2005/05/24 16:50:50 vruppert Exp $ 00000454789i[VBIOS] VBE Bios $Id: vbe.c,v 1.47 2005/05/24 16:50:50 vruppert Exp $ 00000465000e[VGA ] character height = 1, skipping text update 00000510000i[XGUI ] charmap update. Font Height is 16 00000525000i[XGUI ] charmap update. Font Height is 16 00000729790i[BIOS ] ata0-0: PCHS=10011/255/63 translation=lba LCHS=1024/255/63 00000781478e[HD ] device set to 1 which does not exist 00001609413i[BIOS ] int13_harddisk: function 41, unmapped device for ELDL=81 00001614173i[BIOS ] int13_harddisk: function 08, unmapped device for ELDL=81 00001618818i[BIOS ] *** int 15h function AX=00C0, BX=0000 not yet supported! 00127550225e[CPU ] iret: AR byte indicated non code segment 00127623040e[CPU ] iret: AR byte indicated non code segment 00127718759e[CPU ] iret: AR byte indicated non code segment 00127836878e[CPU ] iret: AR byte indicated non code segment 00127977397e[CPU ] iret: AR byte indicated non code segment 00128140316e[CPU ] iret: AR byte indicated non code segment 00128325635e[CPU ] iret: AR byte indicated non code segment 00128533354e[CPU ] iret: AR byte indicated non code segment 00128763473e[CPU ] iret: AR byte indicated non code segment 00129015992e[CPU ] iret: AR byte indicated non code segment 00129290911e[CPU ] iret: AR byte indicated non code segment 00129588230e[CPU ] iret: AR byte indicated non code segment 00129907949e[CPU ] iret: AR byte indicated non code segment 00130250068e[CPU ] iret: AR byte indicated non code segment 00130614587e[CPU ] iret: AR byte indicated non code segment 00131001506e[CPU ] iret: AR byte indicated non code segment 00131410825e[CPU ] iret: AR byte indicated non code segment 00131842544e[CPU ] iret: AR byte indicated non code segment 00132296663e[CPU ] iret: AR byte indicated non code segment 00132773182e[CPU ] iret: AR byte indicated non code segment 00133272101e[CPU ] iret: AR byte indicated non code segment 00133739662e[CPU ] iret: AR byte indicated non code segment 00133745781e[CPU ] iret: AR byte indicated non code segment 00133774300e[CPU ] iret: AR byte indicated non code segment 00133825219e[CPU ] iret: AR byte indicated non code segment 00133898538e[CPU ] iret: AR byte indicated non code segment 00133994257e[CPU ] iret: AR byte indicated non code segment 00134112376e[CPU ] iret: AR byte indicated non code segment 00134252895e[CPU ] iret: AR byte indicated non code segment 00134415814e[CPU ] iret: AR byte indicated non code segment 00134601133e[CPU ] iret: AR byte indicated non code segment 00134808852e[CPU ] iret: AR byte indicated non code segment 00135038971e[CPU ] iret: AR byte indicated non code segment 00135291490e[CPU ] iret: AR byte indicated non code segment 00135566409e[CPU ] iret: AR byte indicated non code segment 00135863728e[CPU ] iret: AR byte indicated non code segment 00136183447e[CPU ] iret: AR byte indicated non code segment 00136525566e[CPU ] iret: AR byte indicated non code segment 00136890085e[CPU ] iret: AR byte indicated non code segment 00137277004e[CPU ] iret: AR byte indicated non code segment 00137686323e[CPU ] iret: AR byte indicated non code segment 00138118042e[CPU ] iret: AR byte indicated non code segment 00138572161e[CPU ] iret: AR byte indicated non code segment 00139048680e[CPU ] iret: AR byte indicated non code segment 00139547599e[CPU ] iret: AR byte indicated non code segment 00140015160e[CPU ] iret: AR byte indicated non code segment 00140021279e[CPU ] iret: AR byte indicated non code segment 00140049798e[CPU ] iret: AR byte indicated non code segment 00140100717e[CPU ] iret: AR byte indicated non code segment 00140174036e[CPU ] iret: AR byte indicated non code segment 00140269755e[CPU ] iret: AR byte indicated non code segment 00140387874e[CPU ] iret: AR byte indicated non code segment 00140528393e[CPU ] iret: AR byte indicated non code segment 00140691312e[CPU ] iret: AR byte indicated non code segment 00140876631e[CPU ] iret: AR byte indicated non code segment 00141084350e[CPU ] iret: AR byte indicated non code segment 00141314469e[CPU ] iret: AR byte indicated non code segment 00141566988e[CPU ] iret: AR byte indicated non code segment 00141841907e[CPU ] iret: AR byte indicated non code segment 00142139226e[CPU ] iret: AR byte indicated non code segment 00142458945e[CPU ] iret: AR byte indicated non code segment 00142801064e[CPU ] iret: AR byte indicated non code segment 00143165583e[CPU ] iret: AR byte indicated non code segment 00143552502e[CPU ] iret: AR byte indicated non code segment 00143961821e[CPU ] iret: AR byte indicated non code segment 00144393540e[CPU ] iret: AR byte indicated non code segment 00144847659e[CPU ] iret: AR byte indicated non code segment 00145324178e[CPU ] iret: AR byte indicated non code segment 00145823097e[CPU ] iret: AR byte indicated non code segment 00146290658e[CPU ] iret: AR byte indicated non code segment 00146296777e[CPU ] iret: AR byte indicated non code segment 00146325296e[CPU ] iret: AR byte indicated non code segment 00146376215e[CPU ] iret: AR byte indicated non code segment 00146449534e[CPU ] iret: AR byte indicated non code segment 00146545253e[CPU ] iret: AR byte indicated non code segment 00146663372e[CPU ] iret: AR byte indicated non code segment 00146803891e[CPU ] iret: AR byte indicated non code segment 00146966810e[CPU ] iret: AR byte indicated non code segment 00147152129e[CPU ] iret: AR byte indicated non code segment 00147359848e[CPU ] iret: AR byte indicated non code segment 00147589967e[CPU ] iret: AR byte indicated non code segment 00147842486e[CPU ] iret: AR byte indicated non code segment 00148117405e[CPU ] iret: AR byte indicated non code segment 00148414724e[CPU ] iret: AR byte indicated non code segment 00148734443e[CPU ] iret: AR byte indicated non code segment 00149076562e[CPU ] iret: AR byte indicated non code segment 00149441081e[CPU ] iret: AR byte indicated non code segment 00149828000e[CPU ] iret: AR byte indicated non code segment 00150237319e[CPU ] iret: AR byte indicated non code segment 00150669038e[CPU ] iret: AR byte indicated non code segment 00151123157e[CPU ] iret: AR byte indicated non code segment 00151599676e[CPU ] iret: AR byte indicated non code segment 00152098595e[CPU ] iret: AR byte indicated non code segment 00152566156e[CPU ] iret: AR byte indicated non code segment 00152572275e[CPU ] iret: AR byte indicated non code segment 00152600794e[CPU ] iret: AR byte indicated non code segment 00152651713e[CPU ] iret: AR byte indicated non code segment 00152725032e[CPU ] iret: AR byte indicated non code segment 00152820751e[CPU ] iret: AR byte indicated non code segment 00152938870e[CPU ] iret: AR byte indicated non code segment 00153079389e[CPU ] iret: AR byte indicated non code segment 00153242308e[CPU ] iret: AR byte indicated non code segment 00153427627e[CPU ] iret: AR byte indicated non code segment 00153635346e[CPU ] iret: AR byte indicated non code segment 00153865465e[CPU ] iret: AR byte indicated non code segment 00154117984e[CPU ] iret: AR byte indicated non code segment 00154392903e[CPU ] iret: AR byte indicated non code segment 00154690222e[CPU ] iret: AR byte indicated non code segment 00155009941e[CPU ] iret: AR byte indicated non code segment 00155352060e[CPU ] iret: AR byte indicated non code segment 00155716579e[CPU ] iret: AR byte indicated non code segment 00156103498e[CPU ] iret: AR byte indicated non code segment 00156512817e[CPU ] iret: AR byte indicated non code segment 00156944536e[CPU ] iret: AR byte indicated non code segment 00157398655e[CPU ] iret: AR byte indicated non code segment 00157875174e[CPU ] iret: AR byte indicated non code segment 00158374093e[CPU ] iret: AR byte indicated non code segment 00158841654e[CPU ] iret: AR byte indicated non code segment 00158847773e[CPU ] iret: AR byte indicated non code segment 00158876292e[CPU ] iret: AR byte indicated non code segment 00158927211e[CPU ] iret: AR byte indicated non code segment 00159000530e[CPU ] iret: AR byte indicated non code segment 00159096249e[CPU ] iret: AR byte indicated non code segment 00159214368e[CPU ] iret: AR byte indicated non code segment 00159354887e[CPU ] iret: AR byte indicated non code segment 00159517806e[CPU ] iret: AR byte indicated non code segment 00159703125e[CPU ] iret: AR byte indicated non code segment 00159910844e[CPU ] iret: AR byte indicated non code segment 00160140963e[CPU ] iret: AR byte indicated non code segment 00160393482e[CPU ] iret: AR byte indicated non code segment 00160668401e[CPU ] iret: AR byte indicated non code segment 00160965720e[CPU ] iret: AR byte indicated non code segment 00161285439e[CPU ] iret: AR byte indicated non code segment 00161627558e[CPU ] iret: AR byte indicated non code segment 00161992077e[CPU ] iret: AR byte indicated non code segment 00162378996e[CPU ] iret: AR byte indicated non code segment 00162788315e[CPU ] iret: AR byte indicated non code segment 00163220034e[CPU ] iret: AR byte indicated non code segment 00163674153e[CPU ] iret: AR byte indicated non code segment 00164150672e[CPU ] iret: AR byte indicated non code segment 00164649591e[CPU ] iret: AR byte indicated non code segment 00165117152e[CPU ] iret: AR byte indicated non code segment 00165123271e[CPU ] iret: AR byte indicated non code segment 00165151790e[CPU ] iret: AR byte indicated non code segment 00165202709e[CPU ] iret: AR byte indicated non code segment 00165276028e[CPU ] iret: AR byte indicated non code segment 00165371747e[CPU ] iret: AR byte indicated non code segment 00165489866e[CPU ] iret: AR byte indicated non code segment 00165630385e[CPU ] iret: AR byte indicated non code segment 00165793304e[CPU ] iret: AR byte indicated non code segment 00165978623e[CPU ] iret: AR byte indicated non code segment 00166186342e[CPU ] iret: AR byte indicated non code segment 00166416461e[CPU ] iret: AR byte indicated non code segment 00166668980e[CPU ] iret: AR byte indicated non code segment 00166943899e[CPU ] iret: AR byte indicated non code segment 00167241218e[CPU ] iret: AR byte indicated non code segment 00167560937e[CPU ] iret: AR byte indicated non code segment 00167903056e[CPU ] iret: AR byte indicated non code segment 00168267575e[CPU ] iret: AR byte indicated non code segment 00168654494e[CPU ] iret: AR byte indicated non code segment 00169063813e[CPU ] iret: AR byte indicated non code segment 00169495532e[CPU ] iret: AR byte indicated non code segment 00169949651e[CPU ] iret: AR byte indicated non code segment 00170426170e[CPU ] iret: AR byte indicated non code segment 00170925089e[CPU ] iret: AR byte indicated non code segment 00171392650e[CPU ] iret: AR byte indicated non code segment 00171398769e[CPU ] iret: AR byte indicated non code segment 00171427288e[CPU ] iret: AR byte indicated non code segment 00171478207e[CPU ] iret: AR byte indicated non code segment 00171551526e[CPU ] iret: AR byte indicated non code segment 00171647245e[CPU ] iret: AR byte indicated non code segment 00171765364e[CPU ] iret: AR byte indicated non code segment 00171905883e[CPU ] iret: AR byte indicated non code segment 00172068802e[CPU ] iret: AR byte indicated non code segment 00172254121e[CPU ] iret: AR byte indicated non code segment 00172461840e[CPU ] iret: AR byte indicated non code segment 00172691959e[CPU ] iret: AR byte indicated non code segment 00172944478e[CPU ] iret: AR byte indicated non code segment 00173219397e[CPU ] iret: AR byte indicated non code segment 00173516716e[CPU ] iret: AR byte indicated non code segment 00173836435e[CPU ] iret: AR byte indicated non code segment 00174178554e[CPU ] iret: AR byte indicated non code segment 00174543073e[CPU ] iret: AR byte indicated non code segment 00174929992e[CPU ] iret: AR byte indicated non code segment 00175339311e[CPU ] iret: AR byte indicated non code segment 00175771030e[CPU ] iret: AR byte indicated non code segment 00176225149e[CPU ] iret: AR byte indicated non code segment 00176701668e[CPU ] iret: AR byte indicated non code segment 00177200587e[CPU ] iret: AR byte indicated non code segment 00177668148e[CPU ] iret: AR byte indicated non code segment 00177674267e[CPU ] iret: AR byte indicated non code segment 00177702786e[CPU ] iret: AR byte indicated non code segment 00177753705e[CPU ] iret: AR byte indicated non code segment 00177827024e[CPU ] iret: AR byte indicated non code segment 00177922743e[CPU ] iret: AR byte indicated non code segment 00178040862e[CPU ] iret: AR byte indicated non code segment 00178181381e[CPU ] iret: AR byte indicated non code segment 00178344300e[CPU ] iret: AR byte indicated non code segment 00178529619e[CPU ] iret: AR byte indicated non code segment 00178737338e[CPU ] iret: AR byte indicated non code segment 00178967457e[CPU ] iret: AR byte indicated non code segment 00179219976e[CPU ] iret: AR byte indicated non code segment 00179494895e[CPU ] iret: AR byte indicated non code segment 00179792214e[CPU ] iret: AR byte indicated non code segment 00180111933e[CPU ] iret: AR byte indicated non code segment 00180454052e[CPU ] iret: AR byte indicated non code segment 00180818571e[CPU ] iret: AR byte indicated non code segment 00181205490e[CPU ] iret: AR byte indicated non code segment 00181614809e[CPU ] iret: AR byte indicated non code segment 00182046528e[CPU ] iret: AR byte indicated non code segment 00182500647e[CPU ] iret: AR byte indicated non code segment 00182977166e[CPU ] iret: AR byte indicated non code segment 00183476085e[CPU ] iret: AR byte indicated non code segment 00183943646e[CPU ] iret: AR byte indicated non code segment 00183949765e[CPU ] iret: AR byte indicated non code segment 00183978284e[CPU ] iret: AR byte indicated non code segment 00184029203e[CPU ] iret: AR byte indicated non code segment 00184102522e[CPU ] iret: AR byte indicated non code segment 00184198241e[CPU ] iret: AR byte indicated non code segment 00184316360e[CPU ] iret: AR byte indicated non code segment 00184456879e[CPU ] iret: AR byte indicated non code segment 00184619798e[CPU ] iret: AR byte indicated non code segment 00184805117e[CPU ] iret: AR byte indicated non code segment 00185012836e[CPU ] iret: AR byte indicated non code segment 00185242955e[CPU ] iret: AR byte indicated non code segment 00185495474e[CPU ] iret: AR byte indicated non code segment 00185770393e[CPU ] iret: AR byte indicated non code segment 00186067712e[CPU ] iret: AR byte indicated non code segment 00186387431e[CPU ] iret: AR byte indicated non code segment 00186729550e[CPU ] iret: AR byte indicated non code segment 00186885000p[XGUI ] >>PANIC<< POWER button turned off. 00186885000i[SYS ] Last time is 1120550975 00186885000i[XGUI ] Exit. 00186885000i[CPU ] protected mode 00186885000i[CPU ] CS.d_b = 32 bit 00186885000i[CPU ] SS.d_b = 32 bit 00186885000i[CPU ] | EAX=00067e44 EBX=0002c8a0 ECX=00000001 EDX=00000010 00186885000i[CPU ] | ESP=00067e44 EBP=00067e48 ESI=0002c9a4 EDI=00000000 00186885000i[CPU ] | IOPL=0 NV UP DI PL NZ NA PO CY 00186885000i[CPU ] | SEG selector base limit G D 00186885000i[CPU ] | SEG sltr(index|ti|rpl) base limit G D 00186885000i[CPU ] | CS:0008( 0001| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | DS:0010( 0002| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | SS:0010( 0002| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | ES:0010( 0002| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | FS:0010( 0002| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | GS:0010( 0002| 0| 0) 00000000 000fffff 1 1 00186885000i[CPU ] | EIP=00100fa9 (00100fa9) 00186885000i[CPU ] | CR0=0x00000011 CR1=0 CR2=0x00000000 00186885000i[CPU ] | CR3=0x00000000 CR4=0x00000000 00186885000i[ ] restoring default signal behavior 00186885000i[CTRL ] quit_sim called with exit code 1 The same problem exists with qemu and grub on real hardware ![]() The most important part is 00127550225e[CPU ] iret: AR byte indicated non code segment . but i check the cs stat on return from int 13 and found it 8 which is my cs with base 0 and limit 4 gb ![]() _________________ Maslan I'm searching for perfection so, even if u need portability u 've to use Assembly --- http://www.maslanlab.org --- http://libosdk.berlios.de http://maslanedit.sf.net http://maslancms.sf.net |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2023, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.