Figure out KZERO.
[rsc] --rw-rw-r-- M 489211 glenda sys 6370 Nov 7 10:00 sys/lib/acid/kernel
/n/sourcesdump/2005/1107/plan9/sys/lib/acid/kernel:319,329 -
/n/sourcesdump/2005/1108/plan9/sys/lib/acid/kernel:319,332
}
complex Page pg;
- return (0x80000000|(pg.pa+(a%BY2PG)))\X;
+ return (KZERO|(pg.pa+(a%BY2PG)))\X;
}
+ defn kzero() {
+ return main - (main & 0x0FFFFFFF);
+ }
+
// PC only
- MACHADDR = 0x80004000;
PTEMAPMEM = (1024*1024);
BY2PG = 4096;
PTEPERTAB = (PTEMAPMEM/BY2PG);
/n/sourcesdump/2005/1107/plan9/sys/lib/acid/kernel:330,335 -
/n/sourcesdump/2005/1108/plan9/sys/lib/acid/kernel:333,339
defn up() {
local mach;
+ MACHADDR = KZERO+0x4000;
mach = MACHADDR;
complex Mach mach;
return mach.externup;
/n/sourcesdump/2005/1107/plan9/sys/lib/acid/kernel:362,372 -
/n/sourcesdump/2005/1108/plan9/sys/lib/acid/kernel:366,378
print("\tinclude(\"/sys/src/9/", kdir, "/", s, ".acid\")\n");
}
+ defn kinit() {
if (map()[2]) != {} then { // map has more than two elements -> active proc
kdir = "unknown";
-
+ KZERO = kzero();
+
if objtype == "386" then {
- map({"*data", 0x80000000, 0xffffffff, 0x80000000});
+ map({"*data", KZERO, 0xffffffff, KZERO});
kdir="pc";
}
if (objtype == "mips" || objtype == "mips2") then {
/n/sourcesdump/2005/1107/plan9/sys/lib/acid/kernel:373,381 -
/n/sourcesdump/2005/1108/plan9/sys/lib/acid/kernel:379,387
kdir = "ch";
}
if objtype == "alpha" then {
- map({"*data", 0x80000000, 0xffffffff, 0x80000000});
+ map({"*data", KZERO, 0xffffffff, KZERO});
kdir = "alpha";
}
needacid("proc");
}
-
+ }
Add missing prototype.
[rsc] --rw-rw-r-- M 489211 glenda sys 21210 Nov 7 09:55 sys/src/9/pc/trap.c
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/trap.c:591,596 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/trap.c:591,597
print("unexpected trap %lud; ignoring\n", ureg->trap);
}
+ extern void checkpages(void);
static void
fault386(Ureg* ureg, void*)
{
[rsc] --rw-rw-r-- M 489211 rsc sys 2396 Nov 7 17:27 sys/src/9/pc/vgavesa.c
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vgavesa.c:23,33 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vgavesa.c:23,36
static uchar*
vbesetup(Ureg *u, int ax)
{
+ ulong pa;
+
+ pa = PADDR(RMBUF);
memset(u, 0, sizeof *u);
u->ax = ax;
- u->es = (RMBUF>>4)&0xF000;
- u->di = RMBUF&0xFFFF;
- return KADDR(RMBUF);
+ u->es = (pa>>4)&0xF000;
+ u->di = pa&0xFFFF;
+ return (void*)RMBUF;
}
static void
[rsc] --rw-rw-r-- M 489211 glenda sys 10255 Nov 7 22:58 sys/src/9/pc/vganeomagic.c
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:34,39 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:34,41
* scr->mmio holds the virtual address of the cursor registers
* in the MMIO space. This may need to change for older chips
* which have the MMIO space offset in the framebuffer region.
+ *
+ * scr->io holds the offset into mmio of the CursorNM struct.
*/
if(scr->mmio)
return;
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:88,94 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:90,96
* last 2KB of the framebuffer.
*/
scr->storage = vmsize-2*1024;
- scr->mmio = (ulong*)((uchar*)scr->mmio + curoff);
+ scr->io = curoff;
vgalinearpci(scr);
if(scr->paddr)
addvgaseg("neomagicscreen", scr->paddr, scr->apsize);
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:101,107 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:103,109
if(scr->mmio == 0)
return;
- cursornm = (void*)scr->mmio;
+ cursornm = (void*)((char*)scr->mmio + scr->io);
cursornm->enable = 0;
}
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:112,118 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:114,120
uint p0, p1;
int x, y;
- p = (uchar*)scr->mmio;
+ p = (uchar*)scr->vaddr;
p += scr->storage + index*1024;
for(y = yo; y < 16; y++){
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:156,162 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:158,164
if(scr->mmio == 0)
return;
- cursornm = (void*)scr->mmio;
+ cursornm = (void*)((char*)scr->mmio + scr->io);
cursornm->enable = 0;
memmove(&scr->Cursor, curs, sizeof(Cursor));
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:172,178 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:174,180
if(scr->mmio == 0)
return 1;
- cursornm = (void*)scr->mmio;
+ cursornm = (void*)((char*)scr->mmio + scr->io);
index = 0;
if((x = p.x+scr->offset.x) < 0){
/n/sourcesdump/2005/1107/plan9/sys/src/9/pc/vganeomagic.c:211,217 -
/n/sourcesdump/2005/1108/plan9/sys/src/9/pc/vganeomagic.c:213,219
neomagicenable(scr);
if(scr->mmio == 0)
return;
- cursornm = (void*)scr->mmio;
+ cursornm = (void*)((char*)scr->mmio + scr->io);
cursornm->enable = 0;
/*
Use soft cursor instead of no cursor.
[rsc] --rw-rw-r-- M 489211 glenda sys 9584 Nov 7 10:01 sys/src/cmd/aux/vga/main.c
/n/sourcesdump/2005/1107/plan9/sys/src/cmd/aux/vga/main.c:455,461 -
/n/sourcesdump/2005/1108/plan9/sys/src/cmd/aux/vga/main.c:455,461
vgactlw("drawinit", "");
if(vga->hwgc == 0 || cflag)
- vgactlw("hwgc", "off");
+ vgactlw("hwgc", "soft");
else
vgactlw("hwgc", vga->hwgc->name);
Cut and paste missed newline.
[rsc] --rw-rw-r-- M 489211 glenda sys 22143 Nov 7 10:01 sys/src/cmd/rio/rio.c
/n/sourcesdump/2005/1107/plan9/sys/src/cmd/rio/rio.c:639,645 -
/n/sourcesdump/2005/1108/plan9/sys/src/cmd/rio/rio.c:639,646
wsendctlmesg(w, Reshaped, r, im);
}
viewr = screen->r;
- flushimage(display, 1);}
+ flushimage(display, 1);
+ }
void
button3menu(void)
Add elf.h obj.h dependencies.
[rsc] --rw-rw-r-- M 489211 glenda sys 479 Nov 7 10:01 sys/src/libmach/mkfile
/n/sourcesdump/2005/1107/plan9/sys/src/libmach/mkfile:38,44 -
/n/sourcesdump/2005/1108/plan9/sys/src/libmach/mkfile:38,44
qobj\
vcodas\
- HFILES=/sys/include/mach.h
+ HFILES=/sys/include/mach.h elf.h obj.h
CFILES=${FILES:%=%.c}
|