Thread View: comp.sys.ibm.pc.programmer
5 messages
5 total messages
Started by Alan S. Shih
Sat, 24 Feb 1990 23:58
386 Protected Mode Interrupt Table..HELP
Author: Alan S. Shih
Date: Sat, 24 Feb 1990 23:58
Date: Sat, 24 Feb 1990 23:58
15 lines
1057 bytes
1057 bytes
Are there anybody who know how to switch interrupt table from real mode to protected mode? I know that interrupt table is only relative with IDT, however, is the memory address for there bios routine still the same? I am trying to write a OS for my 386 which hopefully will utilize my vga + multitasking. Any advise is appreciated! Alan Shih \_______________________________________________________/ | | | Alan Shih | | |
Re: 386 Protected Mode Interrupt Table..HELP
Author: Jay B. Harlow
Date: Sun, 25 Feb 1990 03:51
Date: Sun, 25 Feb 1990 03:51
33 lines
2076 bytes
2076 bytes
In article <6840@ucdavis.ucdavis.edu> shih@iris.ucdavis.edu (Alan S. Shih) writes:
>
> Are there anybody who know how to switch interrupt table from real
> mode to protected mode? I know that interrupt table is only
> relative with IDT, however, is the memory address for there bios
> routine still the same?
> I am trying to write a OS for my 386 which hopefully will utilize
> my vga + multitasking. Any advise is appreciated!
>
Alan,
in protected mode the Interrupt table becomes a table of gates,
which are 8 byte descriptors which discribe where your interrupt routine
is, who my use it (the privalage level needed to access it) how it is
accessed (task, trap, interrupt)
task - a seperate task is envoked suspend the current task
trap - interrupt flag is left alone
interrupt - interrupt flag cleared ( for device IRQ's)
trying to use your bios in protected mode is going to be tricky
most bios'es are not designed to be run in protected mode, the segment
selectors are all different (you do know about segment selectors
don't you) unless you have a PS/2 with ABIOS. I am setting up a small
protected mode system and ALL i/o i need to write myself a suggestion
is to write a register dump routine as soon as possible so you
know where your program is hanging (i have one patched into ALL INT's
for now ;-) I hope this helps
Jay
--
Jay B. Harlow <harlow@plains.nodak.edu>
uunet!plains!harlow (UUCP) harlow@plains (Bitnet)
Of course the above is personal opinion, And has no bearing on reality...
Re: 386 Protected Mode Interrupt Table..HELP
Author: uucp
Date: Sun, 25 Feb 1990 22:03
Date: Sun, 25 Feb 1990 22:03
19 lines
969 bytes
969 bytes
Jay:
Thanx for your reply, I really appreciated.
Is there any book that you can refere for looking up hw ports
in order for me to write "pesudo-Bios" codes?
Thanx.
--
| Alan Shih |
| University California Davis EE |
| :> smile, today is the first day |
| of the rest of your life ;> |
| Alan Shih |
| University California Davis EE |
| :> smile, today is the first day |
| of the rest of your life ;> |
Re: 386 Protected Mode Interrupt Table..HELP
Author: Jay B. Harlow
Date: Sun, 25 Feb 1990 23:21
Date: Sun, 25 Feb 1990 23:21
47 lines
2277 bytes
2277 bytes
In article <9002251653.AA12679@iris.ucdavis.edu> uucp@ucdavis.ucdavis.edu (uucp) writes: > > Jay: > Thanx for your reply, I really appreciated. > Is there any book that you can refere for looking up hw ports > in order for me to write "pesudo-Bios" codes? > Thanx. I had to refer to a number of books (plus my general knowledge) to set up my I/O routines... some books that i find helpful are: "The Programmers's PC Source Book", Thom Hogan, MS Press some useful information (keyboard tables...), sparatic "Programing the 80386", Crawford Gelsinger, SYBEX VERY GOOD book, gives C source for how instructions and internals works "Inside the 80286", Ed Strauss, The Waite Group, Brady (Prentice Hall press) not as nice as above 386 book, but useful for 286 specific "Programmer's Guide to PC & PS/2 Vidio Systems", Richard Wilton, MS Press Good book on vidio displays "Keying on a Standard", Bob Smith, PC Tech Journal Vol 5 Num 7 P 134 Good article on programming the Keyboard Plus a number of other books and articles i have read over the years... ( also a lot of 'BEATING' the machine to get it to work ;-) A couple more hints, when i started out I would ask BIOS which vidio mode i was in and tell it to go to a TEXT mode ie MGA = mode 7, CGA(EGA,VGA...)= mode 3 decide where my vidio buffer is ( MGA, CGA ) and do all the I/O as text via a common segment selector (descriptor has base of vidio mem). unlike MINIX which appears to have a selector for MGA, and a selector for CGA then decides which one to use?? (i may be wrong on this) Jay -- Jay B. Harlow <harlow@plains.nodak.edu> uunet!plains!harlow (UUCP) harlow@plains (Bitnet) Of course the above is personal opinion, And has no bearing on reality...
Re: 386 Protected Mode Interrupt Table..HELP
Author: Paul Allen
Date: Tue, 27 Feb 1990 07:05
Date: Tue, 27 Feb 1990 07:05
36 lines
2511 bytes
2511 bytes
In article <6840@ucdavis.ucdavis.edu> shih@iris.ucdavis.edu (Alan S. Shih) writes: > > Are there anybody who know how to switch interrupt table from real > mode to protected mode? I know that interrupt table is only > relative with IDT, however, is the memory address for there bios > routine still the same? > I am trying to write a OS for my 386 which hopefully will utilize > my vga + multitasking. Any advise is appreciated! > >Alan Shih If you want to hack the source for a 386 protected-mode operating system, get Minix. It's a Unix clone that runs on 80x86 PC's, Atari ST's, Macintoshes, and others. Minix is sold by Prentice-Hall. The latest PC version from PH (1.3) only runs in real mode, but the new version (1.5) as it will ship from PH will run on a 286 or 386 in 286 protected-mode. The changes to go to 386 protected-mode are fairly small. You need a 32-bit compiler, which isn't supplied by PH. Bruce Evans has released binaries of his compiler that runs in 16-bit mode and generates 32-bit object files. I've used that and his 32-bit diffs to bootstrap a Minix kernel that runs in 32-bit mode. Work is in progress to port the GNU C compiler to this environment. (I just compiled and linked a "hello, world" program using gcc, gas, gnu-ld, and a libc.a built from the Minix lib sources on a VAX. The next step is to try to run it on 32-bit Minix.) My guess is that the 386 version of Minix will be a reasonable alternative to the various 'real' Unix's for PC-class hardware in another month or so. PC Minix currently lacks any kind of graphics driver. We need your help! Check out comp.os.minix or ask for the Minix Information Sheet for more info. Paul Allen -- ------------------------------------------------------------------------ Paul L. Allen | pallen@atc.boeing.com Boeing Advanced Technology Center | ...!uw-beaver!bcsaic!pallen
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads