Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!willett!ForthNet From: ForthNet@willett.UUCP (ForthNet articles from GEnie) Newsgroups: comp.lang.forth Subject: Forth on the Intel 80386 Message-ID: <624.UUL1.3#5129@willett.UUCP> Date: 7 Mar 90 02:24:27 GMT Organization: Latest link in the ForthNet chain. (Pgh, PA) Lines: 52 Date: 03-05-90 (09:14) Number: 1775 (Echo) To: MIKE SPERL Refer#: 1772 From: PETE KOZIAR Read: NO Subj: PROTECTED MODE 386 Status: PUBLIC MESSAGE Well, I'm going to have to think a little more on this, but here's some stuff off the top of my head about the linear address mode of the 386: 1. The 386 memory management is designed around a minicomputer model, using the idea of "priviliges." There is an "operating system" that can do some special things (like change memory maps), and an "application program" that is restricted. If there is already an operating system loaded (like DESQview or Windows), it takes the role of the operating system, so a lot of the operating-system-like functions are not allowed, or will be allowed only through special operating-system calls when real 80386 Opsys's finally arrive (Windows/386 really isn't a 32-bit opsys, OS/2 386 isn't out yet, and DESQview forces the 386 into the "multiple-8086" mode). 2. DOS and the BIOS assume 8086 emulation mode, so every time you want to call DOS or BIOS, you must return the machine to its "boot-up" configuration. This can cause real headaches if the data you want to send to the opsys is in a piece of memory that disappears when you restore to the 8086 map. You could probably double-buffer the data, but it wouldn't be pretty. 3. There are apparently "DOS-extenders" around that give you the linear address space. I have never used one, and have no idea how they work. I haven't crossed this bridge just yet. I have an application where it would really be nice to be able to use some of the features of a real opsys (like shared regions), but I can get around it for now. By the way, the Laxon/Perry F83 was a lot more readable than F-PC. L&P had some comments in the shadow screens; it doesn't look like any of the shadow-comments made their way across into F-PC. I think the first step on the way to a real 386 FORTH would be to use the instructions that are available even in the 8086 emulation mode. It would certainly speed up double-precision, and the extra segmentation registers might make some things (like @L) a bit easier. Here's today's trivial speed-up. Three of the most-used constants are certainly -1, 0 and 1. F83 defined them as CODE words, but F-PC does not. Their definitions are easy, and left as an exercise to the reader. --- * Via Qwikmail 2.01 The Baltimore Sun ----- This message came from GEnie via willett through a semi-automated process. Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'