00:00:00 --- log: started osdev/03.11.14 00:01:18 --- quit: Prophet_ (Operation timed out) 00:14:40 --- quit: peng (Read error: 104 (Connection reset by peer)) 00:29:10 --- join: grrrrr_ (~grrrrr@1Cust17.tnt18.sfo8.da.uu.net) joined #osdev 00:29:16 --- quit: loren () 00:29:22 hmm 00:30:16 --- quit: grrrrr (Nick collision from services.) 00:30:30 --- nick: grrrrr_ -> grrrr 00:30:32 --- nick: grrrr -> grrrrr 00:37:21 grr 00:38:18 :P 00:44:38 --- join: mors (mors@dialup-67.30.103.169.Dial1.SanJose1.Level3.net) joined #osdev 00:45:07 --- join: oeck (~oeck@host81-134-206-47.in-addr.btopenworld.com) joined #osdev 00:48:38 --- quit: bono ("Lost terminal") 01:05:32 --- quit: witten_ ("Client exiting") 01:09:49 !!!! 01:10:27 *looks at mors* 01:11:22 *transcends human form* 01:14:19 gmorning world 01:17:51 *ogles back at kye* 01:18:23 and goes away 01:18:28 --- quit: mors () 01:21:41 * geist goes to sleep 01:21:49 gnite geist 01:23:30 night geist 01:27:35 --- quit: debug (Remote closed the connection) 01:29:03 --- join: debug (~debug@tab.csbnet.se) joined #osdev 01:48:12 --- nick: Mathis|work -> Mathis|sleep 01:48:14 <--- 01:48:15 :-) 01:50:46 night 01:50:47 :P 02:12:49 --- join: bwb (~nate@ip68-4-123-127.oc.oc.cox.net) joined #osdev 02:40:59 --- part: bwb left #osdev 02:54:47 --- join: wl (philipp@pD954EC6D.dip.t-dialin.net) joined #osdev 03:06:03 :Q 03:10:07 --- join: Apophis (~kn64@ppp114-105.lns1.syd3.internode.on.net) joined #osdev 03:18:48 --- join: stief (~stief@a194-109-160-120.adsl.xs4all.nl) joined #osdev 03:18:57 hi all 03:19:24 --- join: krish (~krish@219.65.121.71) joined #osdev 03:33:50 cyas 03:33:54 --- nick: kyelewis -> kyelewis|afk 03:33:56 anyone in here ever gave kernel.c that come's along with the grub sources a look ? 03:35:09 * kyelewis|afk is away: but do you really care? :) 03:43:06 --- quit: krish (Read error: 113 (No route to host)) 03:45:01 --- join: _PePs_ (~dieu@AAmiens-106-1-11-224.w80-14.abo.wanadoo.fr) joined #osdev 04:00:11 no one awake in here ? 04:03:29 almost none 04:09:42 toobad :( 04:29:22 hmm 04:36:19 * debug has just completed a preview of a forward-raytrace 04:36:36 (together with a friend and his access to machines at school) 04:36:50 http://193.11.248.54/n/dump.gif 04:39:38 * debug wants to have more time for coding 04:43:07 --- quit: grrrrr (No route to host) 05:08:09 --- join: df (~yakumo@host81-132-128-75.in-addr.btopenworld.com) joined #osdev 05:08:49 --- quit: _PePs_ ("Fermeture du client") 05:11:47 --- quit: oeck (Client Quit) 05:12:03 terve 05:12:17 terve debug 05:12:26 --- join: _PePs_ (~dieu@AAmiens-106-1-11-224.w80-14.abo.wanadoo.fr) joined #osdev 05:13:16 yo 05:13:29 * debug is now happily running smp 05:16:30 multiprocessor or samba? 05:16:39 --- join: KilgoreTrout (~devo@me-augustacuda1cable3a-37.agstme.adelphia.net) joined #osdev 05:19:57 --- join: Kurt (~weberk@mrdh1395pc4.ics.purdue.edu) joined #osdev 05:20:24 multiprocessor 05:21:57 do you have 2 applications running to consume the speed 05:22:15 make -j 2 :-) 05:22:20 -j 3 was actually slower 05:22:47 I thought it would make more efficient use of the time when the cpu would not otherwise be crunching stuff 05:43:26 --- join: frank_ (~frank@e211240.upc-e.chello.nl) joined #osdev 05:43:27 hi 05:44:45 hello 05:45:07 moi 05:45:44 hi 05:45:46 :) 05:48:06 I have a rather simple question 05:48:26 when you enabled paging and have set up the page directory and table, can you still write directly into the mapped memory? 05:53:06 --- quit: Kurt ("Leaving") 05:56:10 if the address you write to is mapped to a valid physical page, and you are allowed to write, then yes 05:56:23 and when you'r not? 05:56:34 I mean not allowed to write 05:56:57 hmm oks 05:58:35 if the page is not write-enabled, and you are running with priviledge level > 0 05:58:38 or something like that 05:58:44 then the write will cause a pagefault 05:59:36 oks 06:02:33 how can I check if paging is enabled, apart from checking if bit 31 is set? 06:02:42 * bit 31 of cr0 that is 06:03:42 hmm I guess you can't... 06:04:11 brb 06:04:13 --- quit: frank_ ("brb") 06:06:13 --- join: frank_ (~frank@e211240.upc-e.chello.nl) joined #osdev 06:16:07 --- join: mrMister (~andri@ti122110a080-5970.bb.online.no) joined #osdev 06:24:41 --- quit: frank_ ("-") 06:39:12 --- quit: debug (Remote closed the connection) 06:41:11 --- join: debug (~debug@tab.csbnet.se) joined #osdev 06:43:28 --- quit: debug (Remote closed the connection) 06:44:50 --- join: debug (~debug@tab.csbnet.se) joined #osdev 06:49:16 --- quit: debug (Remote closed the connection) 06:50:50 --- join: debug (~debug@tab.csbnet.se) joined #osdev 07:28:01 --- join: _PePs__ (~dieu@AAmiens-106-1-14-32.w81-49.abo.wanadoo.fr) joined #osdev 07:28:41 --- quit: _PePs_ (Read error: 104 (Connection reset by peer)) 07:31:31 --- join: oeck (~oeck@host81-134-206-47.in-addr.btopenworld.com) joined #osdev 07:46:44 meals on wheels 07:49:34 dykes on bikes 07:52:03 mice on rice 07:54:12 rastas on pasta 08:00:18 --- quit: debug (Read error: 54 (Connection reset by peer)) 08:07:35 --- join: debug (~debug@tab.csbnet.se) joined #osdev 08:13:09 "...the Open Source Development Lab (OSDL) will pay for its law firm to represent him (Linus). Just in case you didn't you didn't know, the OSDL is funded by a variety of corporations including (but not limitied to) IBM, Hewlett-Packard, Dell, Sun Microsystems, Red Hat, Cisco, Computer Associates, Fujitsu, Hitachi, and Nokia. " 08:13:19 oops 08:16:30 heh 08:17:05 --- nick: Mathis|sleep -> Mathis 08:17:06 From /. 08:17:56 --- nick: Mathis -> Mathis_ 08:21:41 "And so now, SCO stands in the middle of a jungle clearing, waving a stick and raving madly at the 800-pound gorilla of IBM. Suddenly, a rustle from the brush and SCO turns around to see a whole pack of 800-pound gorillas, all staring with steely eyes...." 08:24:56 --- quit: stief (Remote closed the connection) 08:28:35 --- join: demise (psz@c-b64272d5.01-94-7673741.cust.bredbandsbolaget.se) joined #osdev 08:38:45 --- quit: Divine (Read error: 110 (Connection timed out)) 08:41:10 --- quit: df (calvino.freenode.net irc.freenode.net) 08:41:17 --- join: df (~yakumo@host81-132-128-75.in-addr.btopenworld.com) joined #osdev 08:41:22 --- part: df left #osdev 08:41:22 --- join: df (~yakumo@host81-132-128-75.in-addr.btopenworld.com) joined #osdev 08:41:22 --- mode: vinge.freenode.net set +n 08:48:22 --- quit: witten (calvino.freenode.net irc.freenode.net) 08:48:22 --- quit: daam_ (calvino.freenode.net irc.freenode.net) 08:48:22 --- quit: idle (calvino.freenode.net irc.freenode.net) 08:48:22 --- quit: unreal (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: _PePs__ (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: KilgoreTrout (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: Prophet__ (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: kyelewis|afk (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: lynx (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: Zenton (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: trans (calvino.freenode.net irc.freenode.net) 08:48:23 --- quit: zhware (calvino.freenode.net irc.freenode.net) 08:48:48 --- join: witten (~witten@ip-64-32-131-193.dsl.lax.megapath.net) joined #osdev 08:48:48 --- join: daam_ (mada@adsl-64-118-243-135.netrox.net) joined #osdev 08:48:48 --- join: idle (~idle@0-1pool148-18.nas3.roanoke2.va.us.da.qwest.net) joined #osdev 08:48:48 --- join: unreal (unreal@unreal.usercloak.freenode) joined #osdev 08:49:20 --- join: _PePs__ (~dieu@AAmiens-106-1-14-32.w81-49.abo.wanadoo.fr) joined #osdev 08:49:20 --- join: KilgoreTrout (~devo@me-augustacuda1cable3a-37.agstme.adelphia.net) joined #osdev 08:49:20 --- join: Prophet__ (~Prophet@p50813DF2.dip.t-dialin.net) joined #osdev 08:49:20 --- join: kyelewis|afk (~kye@dsl-135.67.240.220.lns02-dryb-mel.dsl.comindico.com.au) joined #osdev 08:49:20 --- join: lynx (~lodsb@pD9544F23.dip.t-dialin.net) joined #osdev 08:49:20 --- join: Zenton (~vicente@8.Red-80-34-35.pooles.rima-tde.net) joined #osdev 08:49:20 --- join: trans (~trans@fatwire-201-54.uniserve.ca) joined #osdev 08:49:20 --- join: zhware (~zhware@219.101.239.126) joined #osdev 08:54:46 --- quit: witten (calvino.freenode.net irc.freenode.net) 08:54:46 --- quit: idle (calvino.freenode.net irc.freenode.net) 08:54:46 --- quit: daam_ (calvino.freenode.net irc.freenode.net) 08:54:46 --- quit: unreal (calvino.freenode.net irc.freenode.net) 08:55:23 --- join: witten (~witten@ip-64-32-131-193.dsl.lax.megapath.net) joined #osdev 08:55:23 --- join: daam_ (mada@adsl-64-118-243-135.netrox.net) joined #osdev 08:55:23 --- join: idle (~idle@0-1pool148-18.nas3.roanoke2.va.us.da.qwest.net) joined #osdev 08:55:23 --- join: unreal (unreal@unreal.usercloak.freenode) joined #osdev 09:19:23 --- join: [Mathis] (~anyone1@pD9EAB607.dip.t-dialin.net) joined #osdev 09:35:29 --- quit: eniac ("Lost terminal") 09:45:16 --- quit: Mathis_ (Read error: 110 (Connection timed out)) 09:45:56 --- join: idle- (~idle@0-1pool150-132.nas3.roanoke2.va.us.da.qwest.net) joined #osdev 09:47:45 --- quit: idle (Nick collision from services.) 09:47:48 die die 09:47:53 --- nick: idle- -> idle 10:12:13 --- join: witten_ (~witten@adsl-gte-la-216-86-199-140.mminternet.com) joined #osdev 10:12:37 --- quit: debug (Remote closed the connection) 10:12:44 --- join: Dr_Evil (DSLflat@p508FE4D3.dip.t-dialin.net) joined #osdev 10:13:08 --- join: debug (~debug@tab.csbnet.se) joined #osdev 10:32:23 --- quit: KilgoreTrout ("Leaving") 10:42:51 --- quit: witten_ ("Client exiting") 10:55:41 --- join: Divine (~john@c-24-10-99-115.client.comcast.net) joined #osdev 10:59:29 got teleportation spell and polymorph wand in nethack :) 11:00:00 * mur wonders if his luck will give him amulet of yendor in the start next time. i found sencond best armors at 2nd level last time 11:00:02 :) 11:01:49 asginaoifn(€"%"=)%(/"=)%/")=%/=")/%=)" 11:02:05 i coudlnt use the polymorphic wand, BECAUSE THE KITTEN ATE ME!!! 11:02:25 --- quit: Dr_Evil () 11:04:07 now i dont understand. the kitten killed me right away the second time too 11:04:12 ???)I 11:05:47 errr.. this time i found plate mail in room where i started from 11:05:51 interesting 11:15:51 --- join: grrrrr (~grrrrr@1Cust101.tnt18.sfo8.da.uu.net) joined #osdev 11:22:14 --- join: mors (~mors@dhcp-128-107-158-50.cisco.com) joined #osdev 11:27:49 --- join: BladE^ (~UNIX@62-101-126-225.fastres.net) joined #osdev 11:27:54 hi 11:28:03 Grr. 11:28:13 hey blade 11:28:29 BladE^: I wasn't grring at you. : 11:28:30 :) 11:28:40 heh 11:29:01 I've wasted two days trying to get this stupid tss to work. 11:29:39 Patrick_W: uhm.. nice cause I was scared2death. 11:29:54 Patrick_W: I was like "What have I done to (again!)" 11:29:55 hehe 11:30:24 If you want I could take my frustration on you instead of throwing my laptop across the room. 11:31:23 morsian :) 11:31:35 that's bride in finnish.. the female who gets married 11:31:36 :) 11:31:46 --- join: frank_ (~frank@e211240.upc-e.chello.nl) joined #osdev 11:31:46 mors: you played nethack? 11:33:04 Patrick_W: hmm maybe we can find a better solution 11:33:12 Patrick_W: why dont you throw you laptop to me? 11:33:32 Patrick_W: this will make us both happy!!!! :P 11:33:51 Haha. 11:33:53 ;P 11:33:59 Unfortuantly, that wouldn't make my tss work. 11:34:10 hey hey mur 11:34:27 dont be so sure, patrick. out of the impact.. somethin might work 11:34:28 Patrick_W: I guess so.. 11:34:46 mors: heh 11:34:57 mors: I'm afraid of that... 11:35:01 this is the dummy tss you are tryin to get right? patrick 11:35:07 or tss tasking? 11:35:11 mors: dummy tss. 11:35:13 Should be simple. 11:35:26 yea 11:35:33 I've tried everything I can think of. 11:35:56 I even completely filled the tss. Then I can ljmp to its descriptor, but I can't ltr it. 11:36:04 ltr? 11:36:08 ltr should be the easy one. 11:36:16 frank_: Load Task Register. 11:36:19 oks 11:36:49 Anytime I do a ltr I get a GPF (exception 13) 11:38:14 --- quit: BladE^ ("leaving") 11:38:37 mors: That info tss thing isn't implemented in bochs. 11:38:50 But I did info gdt and it shows my task descriptor being correct. 11:39:32 ah, yes.. you check the gdt to see if its a proper tss segment 11:39:45 hmm. ive zeroed out all elements in my dummy tss 11:40:07 mors: so, nethacking+ 11:40:08 ? 11:40:31 mors: I've tried it three different ways: zeroed out, zeroed out + ss0/esp0, fully loaded. All give the same thing, GPF. 11:40:31 oh.. sorry, no mur :) 11:42:18 hm.. 11:43:08 well. stick on to all elements zeroed out. its simple anyway and i have only trace,iomapbase and ldt = 0 in my dummy. havent even touched others 11:43:36 and since info gdt, shows its properly loaded.. 11:43:42 What do you put into iomapbase? 11:44:13 0 11:44:26 all those 3 i mentioned are the ones i zeroed out 11:44:32 Oh, ok. 11:44:42 I did a for loop over the structure and made sure it was zero. 11:44:50 --- nick: frank_ -> frank 11:46:02 it's sounds a lot like your gdt isn't loaded properly 11:46:02 so, how many elements does your gdt have? 11:46:10 yea. but he says info gdt is fine 11:46:14 ie your lgdt dodn't actually work 11:46:19 hmm 11:46:35 then secondly maybe his tss descriptor entry in the gdt is bad 11:46:50 because when you do ltr I'm pretty sure it doesn't actually do anything with the contents of the tss 11:47:11 yea. 11:47:12 you're just setting the pointer to the current tss, I think it could be full of garbage and it would work 11:47:32 which means fooling with it's contents is a waste of time 11:47:38 at this stage, at least 11:47:41 geist: My gdt works because I can screw with the segments if I want. 11:48:02 and you're sure? so you've dont a lgdt and then switched to one of the segments and it worked? 11:48:24 ie a ljmp to 0x8 or whatev eryou have the ring 0 code segment be? 11:48:34 Yup. lgdt and then ljmp. If I change the limit on my CS in the lgdt I can see it change in bochs' cpu dump. 11:48:46 so tell me what the different entries are in your gdt? 11:48:49 just a high level 11:48:53 start at the first entry 11:50:36 are you there? 11:50:45 I dont have a lot of time 11:51:01 Yeah, I'm pulling it up. 11:51:08 okay 11:51:13 just looking for an ack 11:51:52 first entry is the null descriptor. 11:52:11 second is my CS0: base 0, limit FFFFF 11:52:34 third is my DS: base 0, limit FFFFF also. 11:52:42 and 6th is my dummy tss. 11:53:00 so seg 0, 0x8, 0x10, 0x28? 11:53:07 6th? 11:53:19 I'm setting base as C0114000 11:53:22 he's leaving a hole for 0x1b and 0x23 11:53:23 Yes, 0x28 11:53:38 Which is where've I've allocated space for the TSS. 11:53:45 okay 11:53:48 limit is 104bytes 11:54:07 ive that as 103 11:54:32 hm 11:54:43 shouldn't really matter 11:54:56 so what about the flags in the descriptor 11:54:59 which type is it? 11:55:57 Lower attributes are 0x89 11:56:05 Upper attributes is 0x0 11:56:13 hmm, and you've looked at my code? 11:56:18 Let me look up what that refers to. 11:56:20 i use bitfields, so it doesn't directly apply 11:56:28 warning, multiline paste... 11:56:30 tss_d->present = 1; 11:56:30 tss_d->avail = 0; 11:56:30 tss_d->zero1 = 0; 11:56:30 tss_d->zero2 = 1; 11:56:32 tss_d->granularity = 1; 11:56:35 11:56:37 aw damnit 11:56:40 it didn't paste 11:56:51 patrick. that seems fine. ive the same too 11:57:03 and the present bit is set? 11:57:29 Yeah. 11:57:39 the granulatoriy bit? 11:57:48 0. 11:57:52 I have it set to 1 11:57:53 avl 0 11:58:11 Hmm. The gran bit has to do with the limit, right? 11:58:30 http://www.newos.org/cgi-bin/fileViewer.cgi?FSPC=//depot/newos/kernel/arch/i386/arch%5fcpu.c&REV=30 11:58:32 I'm not going to have a TSS bigger than 4k. 11:58:43 see line 90 and after 11:58:50 --- quit: oeck (Client Quit) 11:59:10 Oh! Hmm. 11:59:37 Wait. 11:59:38 http://www.newos.org/cgi-bin/fileViewer.cgi?FSPC=//depot/newos/include/kernel/arch/i386/cpu.h&REV=20 11:59:48 see line 35 for the bitfield 12:00:31 Don't want gran set. Then it sets the limit as "(limit << 12) | 0xFFF" 12:00:44 ah 12:00:51 so mine is probably borked 12:01:08 but it shouldn't matter for what we're doing 12:01:14 No, I wouldn't think. 12:01:24 i have zero2 set to 1 for some reason 12:01:28 do you see that? 12:01:36 Yeah, I noticed. 12:01:40 are you doing that? 12:01:48 look in the manual, it might say that you have to set that to 1 12:02:01 I'll look. 12:02:15 think his bits are set properly with that 0x89 and 0x0 . mine works with that 12:02:50 and I assume your base fields are properly set? 12:02:58 the right bits in the right place 12:03:08 yea. the base is what he might want to check again 12:03:19 info gdt shows you the base , right? 12:03:26 mors: Yup. 12:03:34 thats what you want it to be? 12:03:44 Yup. 0xc0114000 12:03:45 well and the base of the tss descriptor 12:04:30 geist: The intel docs flag that bit as reserved and 0. 12:04:40 hmm, why am I setting it to that? 12:04:57 I did that stuff like 2 years ago and haven't looked at it since 12:04:57 You'd have to tell me that. :-P 12:05:12 I'm sure since it works I never looked back 12:05:25 Yeah, I'd probably do the same. 12:05:28 you have me curious though, i'll take a look at it harder later 12:05:39 probably need to fix it, you've already pointed out one little bug in that file 12:06:02 but man it sure looks like it's okay 12:06:12 I've looked on the newsgroups and stuff for this problem and the only thing I've seen is one guy that's experienced it. He said he rewrote everything and it magically worked. Haha. 12:06:30 so you have the bytes ordered correctly? 12:06:41 in the tss descriptor 12:06:57 I messed up once or twice putting the two words in the wrong order 12:07:10 i eventually settled on the bitfields to just solve it once and for all 12:07:20 Yeah, I would assume so. 'info gdt' in bochs says they're right. 12:07:24 you can't mess up a bitfield, except that it's probably not very portable 12:07:35 so what is your gdt limit set to? 12:07:40 when you did the lgdt? 12:07:48 is it long enough to cover the tss entry? 12:08:04 0x30 12:08:05 :) ive wasted an hour or two with this issue 12:08:14 limit of gdt not wasted correct 12:08:19 err. set correct 12:08:29 are you sure? isn't there a -1 in there somewhere? 12:08:33 I suppose I could boost it up a few words just to be sure. 12:08:40 but yeah it looks okay 12:09:19 and you're positive you're putting it in the right index into the gdt 12:09:43 one thing you might want to try just to verif that everything is correct is print out the first n entries in the gdt to the table 12:09:49 in case something is clobbering it 12:09:58 --- join: oeck (~oeck@host81-134-206-47.in-addr.btopenworld.com) joined #osdev 12:10:03 say right before you do the tss load 12:10:51 I print out my gdt and I've got 1 null, 1 code, 1 data, 2 null, tss desc. 12:11:06 heh 12:11:12 I've got this timer callback that suddenly and mysteriously gets its period reset to zero 12:11:13 wtf 12:11:36 0x20 12:11:41 Patrick_W: so it's still valid and present at the time at which you did the ltr... hmmmm 12:11:42 dude 12:11:49 man, I really dont know 12:12:18 patrick. shouldnt it be ltr(0x20) for you? 12:12:26 no, it should be 0x28 12:12:31 mors: 0x20 would point to the third null entry. 12:12:37 0, 8, 0x10, 0x1b, 0x23, 0x28 12:12:50 where 0x1b and 0x23 have the ring 3 rpl 12:12:51 well. his info tss doesnt say so 12:13:02 oh. 2 null 12:13:03 okay 12:13:21 right, his tss is in the 6th entry, index 5 12:13:54 shit i dunno. do you have the bochs source? try instrumenting it with printfs to see how it decides to trigger a gpf 12:13:58 I've done that a few times 12:14:18 vol2 says how gpf can happen with an ltr 12:14:24 68000040118900C0 12:14:25 but looks like yer stuck for a while :) 12:14:52 well I need to go to work, good luck! 12:15:01 sounds lke you're really close, this is the interesting stuff 12:15:16 it's so refreshing to see a real problem being solved in an intellegent manner... 12:15:27 instead of 'I dont know what to do, I'm a dumbass' 12:15:35 Haha. 12:15:45 Yeah, I agree. 12:16:26 * debug looks in his 80486 book: ltr can fail in several ways 12:16:49 yeah, try instrumenting bochs if you can build it 12:17:00 --- join: Dr_Evil (DSLflat@p508FE4D3.dip.t-dialin.net) joined #osdev 12:17:12 yea, there are a couple of ways ltr can get a gpf 12:17:25 "The segment operand in the ltr instruction is local or points to a TSS that is not avaliable" 12:17:29 That's the cause of a GPF. 12:17:43 what are you referring to? patrick . vol2? 12:18:15 "#GP(selector) if the object named by the source selector is not a TSS or is already busy" 12:18:19 (according to the 486 book) 12:18:44 hm 12:19:47 486 book? 12:20:05 shouldn't be too different from newer intel cpus 12:20:20 I have the newest document. 12:20:31 IA-32 vol 3 12:20:39 intel books? 12:20:43 Yeah. 12:21:09 Tells about differences between pentium, p6 and Pentium IV. 12:21:11 --- quit: frank ("brb") 12:25:04 btw, I also tried in VMWare and also GPFs, so not a bochs bug. :) 12:29:43 I cannot really say that I have followed the discussion, but: have you set the sizes correctly? (-1) 12:32:46 Limit? 12:33:02 Limit is 104. Minimum limit for TSS descriptor is 103. 12:34:41 right 12:34:49 hm 12:43:00 --- join: air (~brand@c-24-10-199-222.client.comcast.net) joined #osdev 12:48:14 --- nick: _PePs__ -> _PePs_ 12:51:12 --- nick: file[ZzZz] -> file 13:05:11 --- quit: demise () 13:11:42 --- quit: air (Read error: 104 (Connection reset by peer)) 13:13:43 --- quit: mors (Read error: 60 (Operation timed out)) 13:23:57 --- join: gianluca (~glguida@ppp-161-132.28-151.libero.it) joined #osdev 13:25:18 Oh my. 13:25:23 How retarded. 13:26:10 I had 'asm volatile("mov 0x28, %eax; ltr %ax");' It should have been $0x28 13:26:14 What a load of crap. 13:27:21 --- join: mors (~mors@128.107.174.124) joined #osdev 13:27:35 mors: I figured out my problem. 13:29:00 --- nick: kyelewis|afk -> kyelewis 13:29:02 mors is back? 13:29:31 ah, cool patrick. what was it? 13:29:34 hey idle 13:29:42 idle: yes, great, isn't it ;) 13:29:47 :) 13:29:49 I had 'asm volatile("mov 0x28, %eax; ltr %ax");' It should have been $0x28 13:29:50 :P 13:30:01 oh my :) 13:30:11 cool.. how did ya figure it out 13:30:22 * kyelewis points to the sarcasm in his last sentence with a large novelty finger 13:30:24 :) 13:30:31 I hacked up bochs and figured out that it was getting a weird index value and I was like WTF??? 13:30:49 Patrick_W: :) 13:30:50 Then I looked at my register values and I was like ah...hehe 13:31:18 mors: I actually use to have "ltr 0x28" which is wrong also. 13:31:24 I would have never caught that. 13:32:05 yea. i remember spending some time to get that inline ltr working 13:32:58 The ltr can't be done inline. 13:33:15 Must be from a register. 13:33:17 as in.. inline assembly 13:33:20 Oh. 13:33:21 Ok. 13:33:23 heh :) 13:33:31 --- quit: grrrrr (No route to host) 13:33:44 Ok...so without the $ means "read from that address" and with the $ means "use as a const" 13:33:47 Right? 13:34:29 i think so. yes 13:36:41 --- join: wossname (wossname@HSE-Sherbrooke-ppp79751.qc.sympatico.ca) joined #osdev 13:38:18 --- nick: kyelewis -> kyelewis|busy 13:38:25 kye 13:38:26 :) 13:38:35 heya 13:39:16 * kyelewis|busy goes off to play some max payne 2 13:39:37 old game :) 13:40:13 heh, well, i haven't played 2 yet.. 1 was good for when it was, the graphics in 2 are meant to be pretty darn good 13:40:23 yeap 13:40:35 bbiab 13:47:49 kyelewis|busy: there's cool time effect in net ´hack have you tried? 13:47:50 ;) 13:50:47 --- join: newbs (newbs@ts1-illavl323.shawneelink.net) joined #osdev 14:07:27 --- quit: df ("syntax: ja matte ne!") 14:07:55 --- join: frank (~frank@e211193.upc-e.chello.nl) joined #osdev 14:07:56 gu 14:08:18 Hoi 14:11:01 --- join: tyl3r (~schizob0y@conrad.jahnastah.org) joined #osdev 14:11:16 lo 14:11:19 --- join: Fate (noyb@CBL217-132-237-87.bb.netvision.net.il) joined #osdev 14:11:45 i need some help with assembly-c++ cooperation... 14:12:24 Fate: Whatcha need to do? 14:14:17 i need somehow from c++ to call an interrupt.. 14:14:30 eith using inline asm or built in intr function.. 14:14:46 writing an OS in C++ ? 14:14:46 either way.. i have to have an address of a c++ class var in ES:DI 14:14:50 any idea? 14:14:52 no... 14:15:24 tyl3r: I am. :) 14:15:35 :-/ any ideas? 14:15:37 Fate: Hmm. No I'm not sure. 14:15:42 Patrick_W: isnt it _very_ slow ? 14:15:46 I haven't gotten to that point yet. 14:15:57 tyl3r: that is a common misconception about C++. C++ in itself is not slow. 14:16:02 mathis has his OS in c++ 14:16:03 guys at c++ dont know how to get segment:offset from a c++ pointer so they sent me here... bah 14:16:16 #c++* 14:16:31 It's doing things like virtual functions and tons of templates cause you to get slow. 14:16:40 But, gcc 3.* is pretty decent. 14:17:02 Fate: Segmented? 14:17:04 Hmm. 14:17:23 what segmented? 14:17:31 I'm not sure on how segments work that much. 14:17:47 Fate: you mean you are coding a real mode OS in C++ ? 14:17:52 --- join: summaky (~baka@101.Red-213-96-31.pooles.rima-tde.net) joined #osdev 14:18:25 forget the os coding.... i'm here 'cuse #c++ guys sent me here 14:18:28 real mode? 14:18:41 virtual real mode or real mode? 14:18:53 nm 14:19:03 Fate: ah k 14:19:23 Fate: well, I guess you just need a .globl my_method_symbol_name 14:19:26 then your asm code 14:19:39 and add some extern statement in your c++ include file 14:19:55 writing dos code? 14:19:56 for 0x1000:0x0003 \n char* bla = (char* 0x1000); \n bla[3] = 'F'; ? 14:21:20 tyl3r.. 14:21:29 i need reverse recognition... 14:21:36 the asm needs to know of a var.. 14:21:36 --- quit: mors (Read error: 104 (Connection reset by peer)) 14:21:39 and not the c++ of the asm 14:22:26 --- join: mors (~mors@128.107.174.124) joined #osdev 14:22:50 i've got it simple now....if i have char *ptr in c... i want ES:DI to point to it... 14:23:09 whats the problem 14:23:40 what compiler are you using? 14:23:49 borland turbo c++ 3.0 14:24:19 you should be able to get it to compile to assembly, and link the source from there 14:24:43 if you go up a version, the inline assembler isn't that bad either 14:24:58 and it can deal with compiler symbols 14:25:13 asm { mov di, lolvariable }; 14:26:00 remors 14:26:17 and what about es? 14:26:20 memori mors 14:26:39 well, does your program use multiple segments? 14:27:07 a segment for each... 14:27:11 cs,ds,ss 14:27:12 i only ever wrote single or two segment programs 14:27:21 it's c++ exe program 14:27:25 you can just mov ds, es then. i think 14:27:45 or rather, push ds, pop es 14:27:48 i think i tryed that... 14:27:57 i don't know if the inline assembler will let you use push and pop 14:28:11 --- quit: kyelewis|busy (Read error: 54 (Connection reset by peer)) 14:28:53 no... still fails 14:28:54 :( 14:29:54 sup mors 14:30:11 well, es and ds are likely the same 14:30:18 if you're compiling for just one code seg and one data seg 14:30:20 err. sup mur 14:30:21 :) 14:30:39 use the principle of 'perhaps it will work' 14:30:47 :) 14:31:05 playing nethack 14:31:12 i die constantly' 14:32:08 what're you playing as? 14:33:14 mainly wizard 14:33:37 sometimes archeologist when i'm bothered that i cant have pick-axe until i find hardware store 14:33:40 wizard forever! 14:33:46 tourist is the second best character 14:33:59 wheee 14:34:03 i dropped to level 9 14:34:09 on experience level 1 :D 14:34:13 :o 14:34:26 i've never got past the 14th level of the dungeon. :((~ 14:34:48 first i was dropped to some gold coin repository 14:34:58 i've been just digging down with pick-axe 14:35:16 now i'm in temple of quetzalcoatl, which is my god, i assume 14:35:43 the priest is drunken! or at least drinking some bubble potion ;) 14:36:27 level 11 14:37:33 wheee 14:37:40 exp? 14:37:45 1396 points for 194 moves 14:37:59 with level 1 (14 HP) 14:37:59 :) 14:38:01 chee 14:38:06 --- quit: frank ("bbl") 14:38:27 it sounds like you're overdue for a rape by all the inhabitants of the dungeon :D 14:39:01 --- part: Fate left #osdev 14:40:03 my theory is that i'll eventually drop to same room with amulet of yendor if i dig down much enough ;) 14:43:37 --- part: summaky left #osdev 14:45:39 --- join: AmonRa (~AmonRa@213.233.110.166) joined #osdev 14:46:55 --- join: grrrrr (~grrrrr@1Cust76.tnt18.sfo8.da.uu.net) joined #osdev 14:56:16 --- join: wcstok (strtok_r@cras76p114.navix.net) joined #osdev 14:59:53 --- quit: wossname ("durrr plvxc,.b") 15:11:10 oh damn.. why do these chicks come in miniskirts to office 15:12:24 i feel helpless n i cant concentrate either 15:16:56 --- join: Kurt (weberk@mrdh1395pc1.ics.purdue.edu) joined #osdev 15:17:07 not used to such? 15:17:21 mors you have a hope page? 15:17:24 homepage 15:21:47 nope. no miniskirts where i used to work 15:21:53 and no page either 15:27:08 k 15:30:28 --- quit: Dr_Evil () 15:33:25 --- quit: Kurt ("Leaving") 15:44:43 --- quit: voider ("Client exiting") 15:46:24 --- join: voider (~voider@modemcable226.10-203-24.mc.videotron.ca) joined #osdev 15:56:16 --- quit: wcstok (Read error: 60 (Operation timed out)) 16:08:01 --- join: Kurt (weberk@mrdh1395pc1.ics.purdue.edu) joined #osdev 16:15:45 --- quit: AmonRa (Read error: 54 (Connection reset by peer)) 16:17:09 --- quit: wl ("Quit") 16:33:56 --- quit: oeck (Client Quit) 16:56:35 --- quit: mors (Read error: 54 (Connection reset by peer)) 17:04:40 --- nick: unreal -> crap 17:04:43 --- nick: crap -> unreal 17:05:40 --- nick: unreal -> crap 17:05:57 --- nick: crap -> unreal 17:06:48 sorry about that. automatically changed nickname back to unreal the first time. 17:08:30 --- quit: gianluca (Remote closed the connection) 17:12:21 --- quit: elvstone ("bbl.") 17:13:34 --- quit: Apophis ("Bye") 17:14:55 --- join: mors (~mors@dhcp-128-107-158-50.cisco.com) joined #osdev 17:18:59 --- join: elvstone (~elvis@as3-2-3.sgp.lk.bonet.se) joined #osdev 17:22:20 Patrick_W: awesome! 17:22:29 I just read that you figured out the ltr thing 17:31:08 --- join: gianluca (~glguida@ppp-161-132.28-151.libero.it) joined #osdev 17:31:20 --- quit: gianluca (Client Quit) 17:37:45 --- quit: grrrrr (No route to host) 17:38:53 --- join: oeck (~oeck@host81-134-206-47.in-addr.btopenworld.com) joined #osdev 17:54:29 --- join: grrrrr (~grrrrr@1Cust32.tnt18.sfo8.da.uu.net) joined #osdev 18:00:55 --- quit: mors (Read error: 104 (Connection reset by peer)) 18:01:50 --- join: mors (~mors@dhcp-128-107-158-50.cisco.com) joined #osdev 18:24:30 --- join: jwesley (~chatzilla@adsl-155-139-10.mem.bellsouth.net) joined #osdev 18:27:10 --- quit: file (Read error: 54 (Connection reset by peer)) 18:27:11 --- quit: mrMister ("Lost terminal") 18:33:02 --- quit: lynx (Read error: 60 (Operation timed out)) 18:38:35 --- join: lynx (~lodsb@pD9E63E68.dip.t-dialin.net) joined #osdev 18:45:14 --- quit: Kurt ("Leaving") 18:56:43 --- join: file (~file@mctn1-3650.nb.aliant.net) joined #osdev 19:03:50 --- quit: oeck (Client Quit) 19:12:04 --- join: Kurt (~weberk@mrdh1395pc1.ics.purdue.edu) joined #osdev 19:19:55 --- join: oeck (~oeck@host81-134-206-47.in-addr.btopenworld.com) joined #osdev 19:24:25 geist: Thanks, what a pain that was. 19:25:22 yep 19:25:27 betcha you wont do it again 19:25:30 Haha. 19:25:32 Nope. 19:25:33 I've learned. 19:25:35 and you probably learned more than if it had just worked 19:25:50 Yeah. Now I know what the $ is for. :-P 19:26:14 I use to just use a $ or leave it depending on if it compiled the first time or not...haha. 19:26:37 you bet 19:26:52 one of the reasons I dont like writing x86 asm 19:27:10 you can mess up a lot with simple things like that, since most instructions can be used in a ton of different ways 19:27:18 Yeah. 19:27:29 vs a simple risc machine or something where there are only a few different ways to use any one instruction 19:27:52 Mips is nice like that. 19:33:37 Now to figure out why my linux box just puked. 19:37:06 whoever invent popups should be shot 19:37:11 er invented 19:40:10 --- quit: Kurt ("Leaving") 19:43:28 --- quit: newbs (Client Quit) 19:43:46 --- quit: witten ("Client exiting") 19:57:01 Hmm. That was odd. 20:24:21 indeed 20:25:22 geist: I run gdm as my login manager on my laptop and it suddenly started looking at a different set of pam libraries after my last reboot. 20:25:54 Wouldn't let me login. So I had to go and edit the pam config file to force it to use the hardcoded /lib/sercurity libraries. 20:31:40 oh 20:42:57 geist: Still at work? 20:47:14 --- join: wcstok (strtok_r@cras76p131.navix.net) joined #osdev 20:54:52 yes, but leaving right now 20:55:28 How many hours do you put in a week?? :) 21:01:36 --- nick: file -> file[ZzZz] 21:05:15 depends 21:05:20 but usually 50 or so 21:05:29 and II haven't left yet 21:08:28 --- quit: grrrrr ("ChatZilla 0.9.40 [Mozilla rv:1.6a/20031020]") 21:21:19 --- join: grrrrr (~grrrrr@1Cust227.tnt18.sfo8.da.uu.net) joined #osdev 21:32:40 --- join: psyquark (~psyquark@page-150.caltech.edu) joined #osdev 21:36:24 --- quit: kdehl (Read error: 104 (Connection reset by peer)) 22:01:27 * geist is home 22:23:38 --- join: wli (wli@199.26.172.102) joined #osdev 22:33:58 --- quit: mors () 22:46:29 --- quit: wcstok (Read error: 60 (Operation timed out)) 23:47:51 --- quit: oeck (Client Quit) 23:53:59 --- join: Prophet_ (~Prophet@pD9E49878.dip.t-dialin.net) joined #osdev 23:59:59 --- log: ended osdev/03.11.14