--- /dev/null
+; MMURTL Operating System Source Code\r
+; Copyright 1991,1992,1993,1994 Richard A. Burgess\r
+; ALL RIGHTS RESERVED\r
+; Version 1.0\r
+\r
+;This is MMURTL's page directory and initial page table.\r
+;The page directory has one entry in it which is the linear address\r
+;of it's only page table. The page table has just enough entries\r
+;in it to cover the OS Data, Stack and Code.\r
+;Note that the page directory actual becomes assigned to the Monitor program\r
+;because the OS code isn't actually a task. Remember, OS code runs in OTHER\r
+;job's tasks. The monitor is the first true job launched, which can\r
+;install services, launch programs, report errors on termination, etc.\r
+\r
+;The page directory is 4K and is ALWAYS PAGE ALIGNED\r
+;We fill in the first page directory entry statically, then the\r
+;InitMem routine fills in the page table for us.\r
+;\r
+;A page directory or table entry with all zeros means "not used yet."\r
+;\r
+;The AVL bits are for OS use and are defined as follows:\r
+; A - 1 = Alias of someone elses physical memory\r
+; V - 1 = Undefined (use later for virtual memory mgmt)\r
+; L - 1 = Undefined (use later for virtual memory mgmt)\r
+;The other bits are Hardware defined and set as follows:\r
+; D - 1 = Dirty (written to) since created. CPU sets this.\r
+; A - 1 = Accessed since created. CPU sets this.\r
+; U - 1 = User, 0 = Supervisor. OS sets this.\r
+; W - 1 = Writable for user (super pages are always writable to the OS)\r
+; P - 1 = Present. CPU will not read or mod entry if this is Zero\r
+;\r
+;\r
+; 20 Bit Address AVL00DA00UWP\r
+; | | | || |||\r
+PUBLIC PDir1 DD 00000000000000000011000000000101b ;PT physical address\r
+ DD 511 DUP (0) ;511 BLANK entries\r
+\r
+ DD 00000000000000000011000000000000b ;Shadow for PT Linear address\r
+ DD 511 DUP (0) ;511 BLANK entries\r
+\r
+PUBLIC PTbl1 DD 1024 DUP (0) ;1024 blank entries\r
+\r
+\r
+;-------------------- END OF MODULE ----------------------\r