Date: Sat, 10 Jun 2000 22:54:20 +0530 (IST) Message-Id: <200006101724.WAA28912@bgl2.vsnl.net.in> From: Prashant TR To: alex DOT fru AT mtu-net DOT ru CC: djgpp AT delorie DOT com In-reply-to: <39425BB5.D68FC69E@mtu-net.ru> (alex.fru@mtu-net.ru) Subject: Re: PMode stuff References: <39425BB5 DOT D68FC69E AT mtu-net DOT ru> Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > If you're really good at PMode and you're going to keep on continuing this > doc in details, I'd like to work on it in cooperation with you. > > I think we can cooperate your English skills and my real PMode knowlege (I > know nothing about yours, please forgive me :). > I'm writing PMode tutorials. > They are mix of C and ASM (maximum C, minimum ASM). And they're being done > with such free compilers as Turbo C 2.01 and NASM 0.98. Sure, we can do this thing together. I too have a few old ASM programs somewhere on my disk. I need to search and dig them out ;-). But then, they require TASM & TC. I don't know much about NASM. > Right now I've finished 15 tutorials... Two weeks of job. But I have to > provide a good documentation. A month minimum for me. :)) So why don't we do > this stuff much cooler and more practical: doc + example programs? > > Here goes a list of ready-made tutorials with some comments: > [Tutorials 1 to 8] I've done these things before. Really interesting... If you need docs, I can actually go through the code and write them out in detail since I know what's what. I have my old DOS Extender as well (written much before I ever heard of DJGPP). But again, it's all completely in ASM. I re-wrote that with TC+ASM but I think I've lost that code. > TUT10 Well, let's have a rest. :-) This tutorial shows Big/Unreal Mode, > i.e. accessing RAM in real mode with use of just a 32-bit offset. > Yeah, it's really possible. In fact, you may access up to 4GB > of RAM from Real mode this way. Yes, done this too. Switch to prot. mode, create 4GB descriptor of data type, store them in whatever segment registers you want and get back to real mode, right? > TUT11 It's almost the same as TUT07. The only difference is that task1() > and task2() tasks are 32-bit (32-bit code segments with 32-bit > instructions) and these tasks are in privilege level 3, IOPL=3 too. > New GDT entires added for PL#3 code and data segments respectively. > Screen segment is also redefined as PL#3. > > TUT12 The same as TUT11. 2 LDTs are added for each PL#3 task. > > TUT13 Multitasking. First time we run a Virtual 8086 machine here. > > TUT14 Advanced V86 stuff. A software Int nn is now supported for V86 > tasks. > > TUT15 A working V86 monitor. It redirects IRQs to the V86 task now. So we > have our DOS stuff in V86 mode just like DOS-box in Windows. Hey, this is cool! I tried visiting your site, but there's some problem with xoom.com. It refuses to accept connections. I have some code written in Intel style ASM (for TASM basically). Maybe we could merge them and come up with something nice ;-). And btw, please mail me in private. The discussion may not be appropriate for the DJGPP newsgroup.