From a029b710e2ffc2e43b9fc605ebecb375823fc3f5 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Tue, 5 Nov 1991 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1991-11-05 --- gnot/main.c | 2 +- pc/main.c | 2 +- port/chan.c | 16 + port/devbit.c | 8 +- port/devcons.c | 12 +- port/devdk.c | 4 +- port/devenv.c | 2 +- port/devmnt.c | 2 +- port/devnonet.c | 2 +- port/devproc.c | 2 +- port/fault.c | 20 +- port/pgrp.c | 2 - port/portdat.h | 8 +- port/proc.c | 9 +- port/segment.c | 1 - port/stil.c | 154 ++- port/stream.c | 2 +- port/sysproc.c | 9 +- port/systab.h | 44 +- power/boot.h | 2690 +++++++++++++++++++++++++---------------------- power/devrtc.c | 4 +- power/main.c | 5 +- power/trap.c | 2 +- ss/l.s | 45 +- ss/main.c | 2 +- ss/trap.c | 7 +- 26 files changed, 1648 insertions(+), 1408 deletions(-) diff --git a/gnot/main.c b/gnot/main.c index 9d609033a53959124829189014ed2ef70cb50357..bd78a89a242bb285ecdc5a766781755553aa4ab2 100644 --- a/gnot/main.c +++ b/gnot/main.c @@ -149,7 +149,7 @@ userinit(void) p->fgrp = newfgrp(); strcpy(p->text, "*init*"); - strcpy(p->pgrp->user, "bootes"); + strcpy(p->user, "bootes"); strcpy(user, "bootes"); p->fpstate = FPinit; diff --git a/pc/main.c b/pc/main.c index 0156fa8e8c3d87d478b3e032dbca258741df5cbd..5155227c03ab665070c832473535fdae4ddfe158 100644 --- a/pc/main.c +++ b/pc/main.c @@ -100,7 +100,7 @@ userinit(void) p->fgrp = newfgrp(); strcpy(p->text, "*init*"); - strcpy(p->pgrp->user, user); + strcpy(p->user, user); p->fpstate = FPinit; fpoff(); diff --git a/port/chan.c b/port/chan.c index 14c04dc8fb198757612a59c857eb829c3a726029..13cd5808debbb4b7092677a18190f054c5160009 100644 --- a/port/chan.c +++ b/port/chan.c @@ -434,6 +434,7 @@ namec(char *name, int amode, int omode, ulong perm) int mntok, isdot; char *p; char *elem, *nn; + char createerr[ERRLEN]; if(name[0] == 0) error(Enonexist); @@ -590,9 +591,24 @@ namec(char *name, int amode, int omode, ulong perm) */ if(c->mnt && !(c->flag&CCREATE)) c = createdir(c); + + /* + * protect against the open/create race. This is not a complete + * fix. It just reduces the window. + */ + if(waserror()) { + strcpy(createerr, u->error); + nc = walk(c, elem, 1); + if(nc == 0) + errors(createerr); + c = nc; + omode |= OTRUNC; + goto Open; + } (*devtab[c->type].create)(c, elem, omode, perm); if(omode & OCEXEC) c->flag |= CCEXEC; + poperror(); break; default: diff --git a/port/devbit.c b/port/devbit.c index 48f3d8e0ab50ef359ff4646254ab079a090344af..1ea11522ded8fcbe695740fb16f5435387aa70e6 100644 --- a/port/devbit.c +++ b/port/devbit.c @@ -497,8 +497,12 @@ bitread(Chan *c, void *va, long n, ulong offset) p = va; for(y=miny; yp->pgrp->user, "bootes") == 0) /* BUG */ - u->p->pgrp->user[0] = 0; + if(strcmp(u->p->user, "bootes") == 0) /* BUG */ + u->p->user[0] = 0; else error(Eperm); } @@ -586,7 +586,7 @@ consread(Chan *c, void *buf, long n, ulong offset) return n; case Quser: - return readstr(offset, buf, n, u->p->pgrp->user); + return readstr(offset, buf, n, u->p->user); case Qnull: return 0; @@ -719,14 +719,14 @@ conswrite(Chan *c, void *va, long n, ulong offset) break; case Quser: - if(u->p->pgrp->user[0]) /* trying to overwrite /dev/user */ + if(u->p->user[0]) /* trying to overwrite /dev/user */ error(Eperm); if(offset >= NAMELEN-1) return 0; if(offset+n >= NAMELEN-1) n = NAMELEN-1 - offset; - memmove(u->p->pgrp->user+offset, a, n); - u->p->pgrp->user[offset+n] = 0; + memmove(u->p->user+offset, a, n); + u->p->user[offset+n] = 0; break; case Qcputime: diff --git a/port/devdk.c b/port/devdk.c index 254a592f69ab1ab42e569479271c664ae8500472..8ddf5133c513198967767c9d1e330c2099ed5223 100644 --- a/port/devdk.c +++ b/port/devdk.c @@ -1045,7 +1045,7 @@ dkcall(int type, Chan *c, char *addr, char *nuser, char *machine) */ if(strchr(addr, '\n')) error(Ebadarg); - if(strlen(addr)+strlen(u->p->pgrp->user)+2 >= sizeof(dialstr)) + if(strlen(addr)+strlen(u->p->user)+2 >= sizeof(dialstr)) error(Ebadarg); strcpy(dialstr, addr); bang = strchr(dialstr, '!'); @@ -1059,7 +1059,7 @@ dkcall(int type, Chan *c, char *addr, char *nuser, char *machine) t_val = T_SRV; d_val = D_DIAL; strcat(dialstr, "\n"); - strcat(dialstr, u->p->pgrp->user); + strcat(dialstr, u->p->user); strcat(dialstr, "\n"); break; case Announce: diff --git a/port/devenv.c b/port/devenv.c index 93cbd9d8fbdfb24136b8ee5724a2c589f76a1d3d..0b68586e3bbef62e7afc219ab2bb7aa56f383db4 100644 --- a/port/devenv.c +++ b/port/devenv.c @@ -156,8 +156,8 @@ envcreate(Chan *c, char *name, int omode, ulong perm) if(ne) e = ne; else if(eg->nenv == conf.npgenv){ - print("out of egroup envs\n"); qunlock(&eg->ev); + print("out of egroup envs\n"); error(Enoenv); } i = e - eg->etab + 1; diff --git a/port/devmnt.c b/port/devmnt.c index b748ae0b4a43598bdaa06cb0f9507aaf1e1e49d3..0d5fa6db661e31cb9d4098e9ba0c260552efc552 100644 --- a/port/devmnt.c +++ b/port/devmnt.c @@ -192,7 +192,7 @@ mattach(Mnt *m, char *spec, char *auth) } r->request.type = Tattach; r->request.fid = c->fid; - memmove(r->request.uname, u->p->pgrp->user, NAMELEN); + memmove(r->request.uname, u->p->user, NAMELEN); strncpy(r->request.aname, spec, NAMELEN); strncpy(r->request.auth, auth, NAMELEN); mountrpc(m, r); diff --git a/port/devnonet.c b/port/devnonet.c index e47b848c4a445f10b15bc351dc3ceda7cf2215fe..0537d998e2f14fc50d0bb7a8aac1fb285341442e 100644 --- a/port/devnonet.c +++ b/port/devnonet.c @@ -757,7 +757,7 @@ noconnect(Chan *c, char *addr) * send service name and user name */ cp->hdr->flag |= NO_SERVICE; - sprint(buf, "%s %s", service, u->p->pgrp->user); + sprint(buf, "%s %s", service, u->p->user); c->qid.path = STREAMQID(STREAMID(c->qid.path), Sdataqid); streamwrite(c, buf, strlen(buf), 1); c->qid.path = STREAMQID(STREAMID(c->qid.path), Sctlqid); diff --git a/port/devproc.c b/port/devproc.c index 923f8358e540d885e3051b3c2835a2e0532a3b48..623d2d7719747333f530bab587a3465c81e71f96 100644 --- a/port/devproc.c +++ b/port/devproc.c @@ -366,7 +366,7 @@ procread(Chan *c, void *va, long n, ulong offset) if(offset+n > STATSIZE) n = STATSIZE - offset; j = sprint(statbuf, "%-27s %-27s %-11s ", - p->text, p->pgrp->user, p->psstate ? p->psstate : statename[p->state]); + p->text, p->user, p->psstate ? p->psstate : statename[p->state]); for(i=0; i<6; i++){ l = p->time[i]; if(i == TReal) diff --git a/port/fault.c b/port/fault.c index 6bbdba9fe36ef70083a02f4e898bf584c7f89c55..05100e4bd19bbf9b823ed03a454329e9d3963501 100644 --- a/port/fault.c +++ b/port/fault.c @@ -8,6 +8,8 @@ #define DPRINT +void faultexit(char*); + int fault(ulong addr, int read) { @@ -160,17 +162,13 @@ pio(Segment *s, ulong addr, ulong soff, Page **p) if(loadrec == 0) { /* This is demand load */ c = s->image->c; qlock(&c->rdl); - /* We are unable to correctly error up throught the kernel - * during faults. Therefore note delivery is postponed until - * we leave the system. Read errors cause the process to die. - */ while(waserror()) { if(strcmp(u->error, errstrtab[Eintr]) == 0) continue; qunlock(&c->rdl); kunmap(k); putpage(new); - pexit("demand load I/O error", 0); + faultexit("sys: demand load I/O error"); } ask = s->flen-soff; @@ -206,7 +204,7 @@ pio(Segment *s, ulong addr, ulong soff, Page **p) putpage(new); qlock(&s->lk); qunlock(&s->lk); - pexit("page in I/O error", 0); + faultexit("sys: page in I/O error"); } n = (*devtab[c->type].read)(c, kaddr, BY2PG, daddr); @@ -231,6 +229,16 @@ pio(Segment *s, ulong addr, ulong soff, Page **p) } } +void +faultexit(char *s) +{ + if(u->nerrlab) { + postnote(u->p, 1, s, NDebug); + errors(s); + } + pexit(s, 0); +} + /* * Called only in a system call */ diff --git a/port/pgrp.c b/port/pgrp.c index 5560cfafa6dfdef37377426bae999312f76e88f6..323341ffeba80adeeee5b4b659401b47b1292079 100644 --- a/port/pgrp.c +++ b/port/pgrp.c @@ -310,8 +310,6 @@ pgrpcpy(Pgrp *to, Pgrp *from) Mhead **h, **e, *f, **l, *mh; Mount *n, *m, **link; - memmove(to->user, from->user, NAMELEN); - rlock(&from->ns); e = &from->mnthash[MNTHASH]; diff --git a/port/portdat.h b/port/portdat.h index 4e0a569b06490bfb25d55e971493070d2b4ac686..b7f667e5f9dcf4593d724ee4c87a63bbae7ad227 100644 --- a/port/portdat.h +++ b/port/portdat.h @@ -53,7 +53,7 @@ struct Rendez struct QLock { - Lock use; /* to use object */ + Lock use; /* to access Qlock structure */ Proc *head; /* next process waiting for object */ Proc *tail; /* last process waiting for object */ int locked; /* flag */ @@ -258,8 +258,8 @@ struct Mhead enum{ NUser, /* note provided externally */ - NExit, /* process should exit */ - NDebug, /* process should hang */ + NExit, /* deliver note quietly */ + NDebug, /* print debug message */ }; struct Note @@ -372,7 +372,6 @@ struct Pgrp Pgrp *next; /* free list */ int index; /* index in pgrp table */ ulong pgrpid; - char user[NAMELEN]; QLock debug; /* single access via devproc.c */ RWlock ns; /* Namespace many read/one write lock */ Mhead *mnthash[MNTHASH]; @@ -489,6 +488,7 @@ struct Proc Label sched; Mach *mach; /* machine running this proc */ char text[NAMELEN]; + char user[NAMELEN]; Proc *rnext; /* next process in run queue */ Proc *qnext; /* next process on queue for a QLock */ QLock *qlock; /* address of qlock being queued for DEBUG */ diff --git a/port/proc.c b/port/proc.c index 502d82ad29dec5180d9ce90cfafa82f09f7c6d8c..c1ed285cb010f42c2a8da40b1ce561ef0cc7ed36 100644 --- a/port/proc.c +++ b/port/proc.c @@ -649,8 +649,7 @@ procdump(void) p = procalloc.arena+i; if(p->state != Dead){ print("%d:%s %s upc %lux %s ut %ld st %ld r %lux qpc %lux\n", - p->pid, p->text, - p->pgrp ? p->pgrp->user : "pgrp=0", p->pc, + p->pid, p->text, p->user, p->pc, statename[p->state], p->time[0], p->time[1], p->r, p->qlockpc); } } @@ -708,15 +707,15 @@ kproc(char *name, void (*func)(void *), void *arg) } user = "bootes"; + strcpy(p->user, user); if(kpgrp == 0){ kpgrp = newpgrp(); - strcpy(kpgrp->user, user); } p->pgrp = kpgrp; incref(kpgrp); - if(u->p->pgrp->user[0] != '\0') - user = u->p->pgrp->user; + if(u->p->user[0] != '\0') + user = u->p->user; sprint(p->text, "%s.%.6s", name, user); p->nchild = 0; diff --git a/port/segment.c b/port/segment.c index 7e4bcb609ae0ec2a23316c3e1de4a09277a6f9f5..27c3729a5a535cd7719458237e0525ed870df3cf 100644 --- a/port/segment.c +++ b/port/segment.c @@ -364,7 +364,6 @@ ibrk(ulong addr, int seg) if(newtop >= ns->base && newtop < ns->top) { qunlock(&s->lk); pprint("segments overlap\n"); - pexit("Suicide", 0); error(Esegaddr); } } diff --git a/port/stil.c b/port/stil.c index fef2c335d7062f77d9e5ccece722363d8d50f3db..9e2c1f98c6e62433399f6d88d74ca71339b1dea2 100644 --- a/port/stil.c +++ b/port/stil.c @@ -17,11 +17,19 @@ static int initseq = 25000; static Rendez ilackr; char *ilstate[] = { "Closed", "Syncer", "Syncee", "Established", "Listening", "Closing" }; +enum +{ + Slowtime = 20, + Fasttime = 1, +}; + void ilrcvmsg(Ipconv*, Block*); void ilackproc(void*); void ilsendctl(Ipconv*, Ilhdr*, int, int); void ilackq(Ilcb*, Block*); void ilprocess(Ipconv*, Ilhdr*, Block*); +void ilpullup(Ipconv*); +void ilhangup(Ipconv*); void ilopen(Queue *q, Stream *s) @@ -181,7 +189,7 @@ ilackto(Ilcb *ic, ulong ackto) while(ic->unacked) { h = (Ilhdr *)ic->unacked->rptr; if(ackto < nhgetl(h->ilack)) - break; + break; bp = ic->unacked; ic->unacked = bp->list; bp->list = 0; @@ -276,13 +284,13 @@ ilprocess(Ipconv *s, Ilhdr *h, Block *bp) { Block *nb; Ilcb *ic; - Ilhdr *oh; - ulong id, ack, oid, dlen; + ulong id, ack, dlen; id = nhgetl(h->ilid); ack = nhgetl(h->ilack); ic = &s->ilctl; + ic->timeout = 0; /* Active transition machine - this tracks connection state */ switch(ic->state) { case Ilsyncee: @@ -301,6 +309,7 @@ ilprocess(Ipconv *s, Ilhdr *h, Block *bp) ic->recvd = id+1; ilsendctl(s, 0, Ilack, 1); ic->state = Ilestablished; + ilpullup(s); } break; case Ilclosing: @@ -308,12 +317,20 @@ ilprocess(Ipconv *s, Ilhdr *h, Block *bp) ic->state = Ilclosed; /* No break */ case Ilclosed: - goto hungup; + ilhangup(s); + freeb(bp); + return; } /* Passive actions based on packet type */ switch(h->iltype) { - default: + case Ilstate: + if(ic->unacked) { + nb = copyb(ic->unacked, blen(ic->unacked)); + PUTNEXT(Ipoutput, nb); + } + else + ilsendctl(s, 0, Ilack, 1); freeb(bp); break; case Ilack: @@ -342,45 +359,68 @@ ilprocess(Ipconv *s, Ilhdr *h, Block *bp) s->ilctl.recvd++; bp->rptr += IL_EHSIZE+IL_HDRSIZE; PUTNEXT(s->readq, bp); + ilpullup(s); } } break; case Ilclose: ic->state = Ilclosing; - hungup: - if(s->readq) { - nb = allocb(0); - nb->type = M_HANGUP; - nb->flags |= S_DELIM; - PUTNEXT(s->readq, nb); - } + ilhangup(s); + /* No break */ + default: freeb(bp); + break; } +} - /* Since recvd may have changed we can process out of order packets */ - if(ic->state == Ilestablished && s->readq) { - while(ic->outoforder) { - bp = ic->outoforder; - oh = (Ilhdr*)bp->rptr; - oid = nhgetl(oh->ilid); - if(oid > ic->recvd) - break; - if(oid < ic->recvd) { - ic->outoforder = bp->list; - freeb(bp); - } - if(oid == ic->recvd) { - ic->recvd++; - ic->outoforder = bp->list; - bp->list = 0; - dlen = nhgets(oh->illen)-IL_HDRSIZE; - bp = btrim(bp, IL_EHSIZE+IL_HDRSIZE, dlen); - PUTNEXT(s->readq, bp); - } - } +void +ilhangup(Ipconv *s) +{ + Block *nb; + + if(s->readq) { + nb = allocb(0); + nb->type = M_HANGUP; + nb->flags |= S_DELIM; + PUTNEXT(s->readq, nb); } } +void +ilpullup(Ipconv *s) +{ + Ilcb *ic; + Ilhdr *oh; + ulong oid, dlen; + Block *bp; + + if(s->readq == 0) + return; + + ic = &s->ilctl; + if(ic->state != Ilestablished) + return; + + while(ic->outoforder) { + bp = ic->outoforder; + oh = (Ilhdr*)bp->rptr; + oid = nhgetl(oh->ilid); + if(oid > ic->recvd) + break; + if(oid < ic->recvd) { + ic->outoforder = bp->list; + freeb(bp); + } + if(oid == ic->recvd) { + ic->recvd++; + ic->outoforder = bp->list; + bp->list = 0; + dlen = nhgets(oh->illen)-IL_HDRSIZE; + bp = btrim(bp, IL_EHSIZE+IL_HDRSIZE, dlen); + PUTNEXT(s->readq, bp); + } + } +} void iloutoforder(Ipconv *s, Ilhdr *h, Block *bp) @@ -391,22 +431,22 @@ iloutoforder(Ipconv *s, Ilhdr *h, Block *bp) uchar *lid; ic = &s->ilctl; + bp->list = 0; if(ic->outoforder == 0) { ic->outoforder = bp; - bp->list = 0; + return; } - else { - id = nhgetl(h->id); - l = &ic->outoforder; - for(f = *l; f; f = f->list) { - lid = ((Ilhdr*)(bp->rptr))->ilid; - if(id > nhgetl(lid)) - break; - l = &f->list; - } - bp->list = *l; - *l = bp; + + id = nhgetl(h->id); + l = &ic->outoforder; + for(f = *l; f; f = f->list) { + lid = ((Ilhdr*)(bp->rptr))->ilid; + if(id > nhgetl(lid)) + break; + l = &f->list; } + bp->list = *l; + *l = bp; } void @@ -460,6 +500,7 @@ void ilackproc(void *a) { Ipconv *base, *end, *s; + Ilcb *ic; Block *bp, *np; base = (Ipconv*)a; @@ -468,14 +509,30 @@ ilackproc(void *a) for(;;) { tsleep(&ilackr, return0, 0, 100); for(s = base; s < end; s++) { -/* Decide if we have to do the action !! */ - switch(s->ilctl.state) { + ic = &s->ilctl; + switch(ic->state) { case Ilclosed: case Illistening: + break; case Ilclosing: - case Ilsyncer: + break; case Ilsyncee: + case Ilsyncer: + ilsendctl(s, 0, Ilsync, 1); + if(++ic->timeout == Slowtime) { + ilhangup(s); + ic->state = Ilclosed; + s->dst = 0; + s->pdst = 0; + ic->timeout = 0; + } + break; case Ilestablished: + if(++ic->timeout == Fasttime) { + if(ic->lastack < ic->recvd) + ilsendctl(s, 0, Ilstate, 1); + ic->timeout = 0; + } break; } } @@ -490,6 +547,7 @@ ilstart(Ipconv *ipc, int type, int window) if(ic->state != Ilclosed) return; + ic->timeout = 0; ic->unacked = 0; ic->outoforder = 0; initseq += TK2MS(MACHP(0)->ticks); diff --git a/port/stream.c b/port/stream.c index 2f57f56315a3bb02b7262c0ba546eaed2307425b..e15371dfe479658663c487c0c1d3e74e5b67a796 100644 --- a/port/stream.c +++ b/port/stream.c @@ -1190,7 +1190,7 @@ qlook(Stream *s, char *name) * pop -- pop a line discipline * look ldname -- look for a line discipline * - * This routing is entrered with s->wrlock'ed and must unlock. + * This routing is entered with s->wrlock'ed and must unlock. */ static long streamctlwrite(Chan *c, void *a, long n) diff --git a/port/sysproc.c b/port/sysproc.c index 4b890d503ea6e7e540c5d2778026d11d2617acce..6d6e3493f3790259acb5d78cfebddde67d56c3a8 100644 --- a/port/sysproc.c +++ b/port/sysproc.c @@ -14,7 +14,7 @@ long rfork(ulong); long sysr1(ulong *arg) { - print("[%s %s %d] r1 = %d\n", u->p->pgrp->user, u->p->text, u->p->pid, arg[0]); + print("[%s %s %d] r1 = %d\n", u->p->user, u->p->text, u->p->pid, arg[0]); return 0; } @@ -128,6 +128,7 @@ rfork(ulong flag) memset(p->time, 0, sizeof(p->time)); p->time[TReal] = MACHP(0)->ticks; memmove(p->text, u->p->text, NAMELEN); + memmove(p->user, u->p->user, NAMELEN); /* * since the bss/data segments are now shareable, * any mmu info about this process is now stale @@ -288,9 +289,6 @@ sysexec(ulong *arg) memmove(p->text, elem, NAMELEN); - if(waserror()) - pexit("fatal exec error", 0); - /* * Committed. Free old memory. Special segments are maintained accross exec */ @@ -340,7 +338,6 @@ sysexec(ulong *arg) relocateseg(s, TSTKTOP-USTKTOP); close(tc); - poperror(); /* * At this point, the mmu contains info about the old address @@ -478,8 +475,6 @@ sysforkpgrp(ulong *arg) if(mask == FPall) mask = FPnote|FPenv|FPnamespc; - memmove(pg->user, u->p->pgrp->user, NAMELEN); - if(mask & FPnamespc) pgrpcpy(pg, u->p->pgrp); diff --git a/port/systab.h b/port/systab.h index 3f6fa940d979421fe52fa34de525ad6c2f065559..15eb4718c3cfc1168d0ffcbceade4b5ae0485a53 100644 --- a/port/systab.h +++ b/port/systab.h @@ -2,13 +2,43 @@ #include "/sys/src/libc/9syscall/sys.h" typedef long Syscall(ulong*); -Syscall sysbind, sysbrk_, syschdir, sysclose, syscreate, sysdeath; -Syscall sysdup, syserrstr, sysexec, sysexits, sysfork, sysforkpgrp; -Syscall sysfstat, sysfwstat, sysgetpid, sysmount, sysnoted; -Syscall sysnotify, sysopen, syspipe, sysr1, sysread, sysremove, sysseek; -Syscall syssleep, sysstat, syswait, syswrite, syswstat, sysalarm, syssegbrk; -Syscall syssegattach, syssegdetach, syssegfree, syssegflush; -Syscall sysrendezvous, sysrfork, sysunmount; + +Syscall sysr1; +Syscall syserrstr; +Syscall sysbind; +Syscall syschdir; +Syscall sysclose; +Syscall sysdup; +Syscall sysalarm; +Syscall sysexec; +Syscall sysexits; +Syscall sysfork; +Syscall sysforkpgrp; +Syscall sysfstat; +Syscall syssegbrk; +Syscall sysmount; +Syscall sysopen; +Syscall sysread; +Syscall sysseek; +Syscall syssleep; +Syscall sysstat; +Syscall syswait; +Syscall syswrite; +Syscall syspipe; +Syscall syscreate; +Syscall sysrfork; +Syscall sysbrk_; +Syscall sysremove; +Syscall syswstat; +Syscall sysfwstat; +Syscall sysnotify; +Syscall sysnoted; +Syscall syssegattach; +Syscall syssegdetach; +Syscall syssegfree; +Syscall syssegflush; +Syscall sysrendezvous; +Syscall sysunmount; Syscall *systab[]={ [SYSR1] sysr1, diff --git a/power/boot.h b/power/boot.h index 79d71aa9458eff4740f39556c2d04d9638556ebb..a95bf14088ab2a0688bfdc4e0623015ee62f49f1 100644 --- a/power/boot.h +++ b/power/boot.h @@ -1,8 +1,8 @@ ulong bootcode[]={ 0x000000407, - 0x000005440, - 0x0000006b0, - 0x000001368, + 0x000005660, + 0x000000700, + 0x000001290, 0x000000000, 0x000001020, 0x000000000, @@ -17,164 +17,168 @@ ulong bootcode[]={ 0x0afa10004, 0x00c000416, 0x0afa20008, - 0x00c000956, + 0x00c000905, 0x0afa10004, 0x008000412, 0x000000027, 0x023bdffec, 0x0afbf0000, - 0x023c28229, + 0x0afa0000c, + 0x023c2824d, 0x0afa20004, - 0x00c000a75, + 0x00c000a5c, 0x0afa00008, - 0x023c38231, + 0x023c38255, 0x0afa30004, 0x020020001, - 0x00c000a75, + 0x00c000a5c, 0x0afa20008, - 0x023c38239, + 0x023c3825d, 0x0afa30004, 0x020020001, - 0x00c000a75, + 0x00c000a5c, 0x0afa20008, - 0x08fa4001c, + 0x08fa3001c, 0x000000027, - 0x08c830000, - 0x024850004, - 0x0afa3000c, - 0x0afa5001c, - 0x08fa30018, + 0x024640004, + 0x0afa4001c, + 0x08fa20018, 0x000000027, - 0x02464ffff, - 0x01880000b, - 0x0afa40018, - 0x08ca30000, - 0x02002002d, - 0x080630000, + 0x02445ffff, + 0x018a00013, + 0x0afa50018, + 0x08c820000, + 0x02003002d, + 0x080420000, + 0x000000027, + 0x01443000d, 0x000000027, - 0x014620005, + 0x08c820000, + 0x02003006d, + 0x080420001, 0x000000027, - 0x024a50004, - 0x0afa5001c, - 0x00800042f, - 0x02484ffff, - 0x023c38032, + 0x014430003, + 0x000000027, + 0x020020001, + 0x0afa2000c, + 0x024840004, + 0x0afa4001c, + 0x00800042e, + 0x024a5ffff, + 0x023c38026, 0x0afa30004, - 0x023c28241, - 0x00c000a16, + 0x023c28265, + 0x00c0009e5, 0x0afa20008, - 0x023c39882, + 0x023c39902, 0x0afa30004, - 0x023c2824c, - 0x00c000a16, + 0x023c28270, + 0x00c0009e5, 0x0afa20008, 0x08fa5001c, 0x08fa30018, 0x020020001, - 0x01062002c, - 0x023c49882, + 0x010620029, + 0x023c49902, 0x020020002, - 0x01062001c, + 0x010620019, 0x000000027, - 0x0afa00004, 0x08fa3000c, - 0x00c0005be, - 0x0afa30008, + 0x00c000707, + 0x0afa30004, 0x08fc48006, 0x000000027, 0x018800003, 0x000000027, - 0x00c000a69, + 0x00c000a44, 0x0afa40004, - 0x08fc2802a, + 0x08fc2801a, 0x000000027, 0x018400004, 0x000000027, - 0x08fc3802a, - 0x00c000a69, + 0x08fc3801a, + 0x00c000a44, 0x0afa30004, - 0x0afc0802a, + 0x0afc0801a, 0x0afc08006, 0x020030001, + 0x00c000707, 0x0afa30004, - 0x08fa2000c, - 0x00c0005be, - 0x0afa20008, 0x08fc48006, - 0x008000453, + 0x008000459, 0x000000027, 0x0afa40004, 0x08ca20000, - 0x00c000a16, + 0x00c0009e5, 0x0afa20008, - 0x023c38032, + 0x023c38026, 0x0afa30004, 0x08fa2001c, 0x000000027, 0x08c420004, - 0x00c000a16, + 0x00c0009e5, 0x0afa20008, - 0x00800044d, + 0x008000454, 0x000000027, 0x0afa40004, 0x08ca20000, - 0x00c000a16, + 0x00c0009e5, 0x0afa20008, - 0x00800044d, + 0x008000454, 0x000000027, 0x023bdfff4, 0x0afbf0000, - 0x023c38259, - 0x0afa30004, - 0x020020002, - 0x00c000a75, - 0x0afa20008, + 0x023c28278, + 0x0afa20004, + 0x020030002, + 0x00c000a5c, + 0x0afa30008, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd000c, 0x023bdffdc, 0x0afbf0000, - 0x023c5809a, - 0x08ca30000, + 0x023c58092, + 0x08ca20000, 0x000000027, - 0x01060000b, + 0x01040000b, 0x000000027, 0x0afa50014, - 0x08ca30000, + 0x08ca20000, 0x000000027, - 0x0afa30004, + 0x0afa20004, 0x08fa40028, - 0x00c000a03, + 0x00c0009d2, 0x0afa40008, 0x08fa50014, - 0x0142000a1, + 0x0142000a5, 0x000000027, 0x0afa50014, 0x08ca20000, 0x000000027, 0x014400008, 0x000000027, - 0x023c38261, - 0x00c000981, + 0x023c38280, + 0x00c000930, 0x0afa30004, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, - 0x08fc2804e, + 0x08fc28042, 0x000000027, 0x014400048, 0x000000027, - 0x023c2828f, + 0x023c282ae, 0x0afa20004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x004210008, 0x000000027, - 0x023c38298, - 0x00c000760, + 0x023c382b7, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0024, @@ -182,88 +186,88 @@ ulong bootcode[]={ 0x02001ffff, 0x0afa10020, 0x0afa10004, - 0x023c482a9, + 0x023c482c8, 0x0afa40008, 0x02003000d, - 0x00c000a85, + 0x00c000a70, 0x0afa3000c, 0x08fa50020, 0x00421000a, 0x000000027, - 0x00c000a69, + 0x00c000a44, 0x0afa50004, - 0x023c382b7, - 0x00c000760, + 0x023c382d6, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, 0x0afa50004, - 0x023c482c5, + 0x023c482e4, 0x0afa40008, 0x02003000c, - 0x00c000a85, + 0x00c000a70, 0x0afa3000c, 0x08fa50020, 0x00421000a, 0x000000027, - 0x00c000a69, + 0x00c000a44, 0x0afa50004, - 0x023c382d2, - 0x00c000760, + 0x023c382f1, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, 0x0afa50004, - 0x023c482df, + 0x023c482fe, 0x0afa40008, 0x02003000c, - 0x00c000a85, + 0x00c000a70, 0x0afa3000c, 0x00421000b, 0x000000027, 0x08fa20020, - 0x00c000a69, + 0x00c000a44, 0x0afa20004, - 0x023c382ec, - 0x00c000760, + 0x023c3830b, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, 0x020020001, - 0x0afc2804e, - 0x023c282f9, + 0x0afc28042, + 0x023c28318, 0x0afa20004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x004210008, 0x0afa10018, - 0x023c38308, - 0x00c000760, + 0x023c38327, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, - 0x023c3831f, + 0x023c3833e, 0x0afa30004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x00421000c, 0x0afa1001c, 0x08fa20018, - 0x00c000a69, + 0x00c000a44, 0x0afa20004, - 0x023c2832d, + 0x023c2834c, 0x0afa20004, - 0x00c000760, + 0x00c0007ed, 0x02003ffff, 0x08fa20000, 0x023bd0024, @@ -272,7 +276,7 @@ ulong bootcode[]={ 0x08fa40014, 0x000000027, 0x08c840004, - 0x00c000a55, + 0x00c000a24, 0x0afa40004, 0x0afa10010, 0x08fa4001c, @@ -284,33 +288,37 @@ ulong bootcode[]={ 0x000000027, 0x0afa20008, 0x08fa40010, - 0x00c000a85, + 0x00c000a70, 0x0afa4000c, 0x004210012, 0x000000027, 0x08fa2001c, - 0x00c000a69, + 0x00c000a44, 0x0afa20004, 0x08fa30018, - 0x00c000a69, + 0x00c000a44, 0x0afa30004, 0x08fa30014, 0x000000027, 0x08c630004, 0x000000027, 0x0afa30004, - 0x00c000760, + 0x00c0007ed, 0x02002ffff, 0x08fa20000, 0x023bd0024, 0x000400008, 0x02001ffff, + 0x023c28362, + 0x0afc28022, + 0x023c38368, + 0x0afc380fe, 0x08fa10018, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd0024, - 0x008000489, + 0x00800048d, 0x024a50008, 0x023bdffa8, 0x0afbf0000, @@ -318,51 +326,51 @@ ulong bootcode[]={ 0x000000027, 0x014400038, 0x000000027, - 0x023c28343, + 0x023c28370, 0x0afa20004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x004210008, - 0x0afc1802e, - 0x023c3834a, - 0x00c000760, + 0x0afc1801e, + 0x023c38377, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0058, 0x000400008, 0x02001ffff, 0x0afa10004, - 0x023c48359, + 0x023c48386, 0x0afa40008, 0x02003000a, - 0x00c000a85, + 0x00c000a70, 0x0afa3000c, - 0x08fc5802e, + 0x08fc5801e, 0x00421000a, 0x000000027, - 0x00c000a69, + 0x00c000a44, 0x0afa50004, - 0x023c38364, - 0x00c000760, + 0x023c38391, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0058, 0x000400008, 0x02001ffff, 0x0afa50004, - 0x023c4836f, + 0x023c4839c, 0x0afa40008, 0x020030017, - 0x00c000a85, + 0x00c000a70, 0x0afa3000c, 0x00421000b, 0x000000027, - 0x08fc2802e, - 0x00c000a69, + 0x08fc2801e, + 0x00c000a44, 0x0afa20004, - 0x023c38387, - 0x00c000760, + 0x023c383b4, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0058, @@ -371,35 +379,35 @@ ulong bootcode[]={ 0x020020001, 0x0afc280ce, 0x0200307d0, - 0x00c000a81, + 0x00c000a64, 0x0afa30004, - 0x023c3839f, + 0x023c383cc, 0x0afa30004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x004210008, 0x0afa10054, - 0x023c283ab, - 0x00c000760, + 0x023c283d8, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, 0x023bd0058, 0x000400008, 0x02001ffff, - 0x023c283bf, + 0x023c283ec, 0x0afa20004, 0x020040002, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, 0x00421000c, - 0x0afc1802a, + 0x0afc1801a, 0x08fa30054, - 0x00c000a69, + 0x00c000a44, 0x0afa30004, - 0x023c383ca, + 0x023c383f7, 0x0afa30004, - 0x00c000760, + 0x00c0007ed, 0x02002ffff, 0x08fa20000, 0x023bd0058, @@ -407,925 +415,836 @@ ulong bootcode[]={ 0x02001ffff, 0x023a20014, 0x0afa20004, - 0x023c383dd, + 0x023c3840a, 0x0afa30008, 0x08fa2005c, - 0x00c0009cb, + 0x00c00097a, 0x0afa2000c, 0x023a40014, - 0x00c000a55, + 0x00c000a24, 0x0afa40004, 0x0afa10010, - 0x08fc4802a, + 0x08fc4801a, 0x023a20014, 0x0afa40004, 0x0afa20008, 0x08fa40010, - 0x00c000a85, + 0x00c000a70, 0x0afa4000c, 0x004210010, 0x000000027, - 0x08fc2802a, - 0x00c000a69, + 0x08fc2801a, + 0x00c000a44, 0x0afa20004, 0x08fa30054, - 0x00c000a69, + 0x00c000a44, 0x0afa30004, 0x02002ffff, - 0x0afc2802a, + 0x0afc2801a, 0x023a30014, - 0x00c000760, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, 0x023bd0058, 0x000400008, 0x02001ffff, + 0x023c28415, + 0x0afc28022, + 0x023c38418, + 0x0afc380fe, 0x08fa10054, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd0058, - 0x023bdffd8, + 0x023bdff2c, 0x0afbf0000, - 0x08fc68006, - 0x08fa2002c, + 0x08fa300d8, + 0x00c000541, + 0x0afa30004, + 0x004210005, 0x000000027, - 0x010400011, + 0x08fa20000, + 0x023bd00d4, + 0x000400008, + 0x02001ffff, + 0x0afa100d0, + 0x00c000627, + 0x0afa10004, + 0x08fa500d0, + 0x014200007, 0x000000027, - 0x023c383e8, - 0x0afa30004, - 0x023c29882, - 0x0afa20008, - 0x02003008c, - 0x00c0008fe, - 0x0afa3000c, - 0x023c283f1, + 0x00c000a44, + 0x0afa50004, + 0x08fa20000, + 0x023bd00d4, + 0x000400008, + 0x02001ffff, + 0x0afa50004, + 0x023c4841d, + 0x0afa40008, + 0x0afa0000c, + 0x023c28422, + 0x0afa20010, + 0x023c48423, + 0x00c000a58, + 0x0afa40014, + 0x004210004, + 0x000000027, + 0x023c28424, + 0x00c0007ff, 0x0afa20004, - 0x023c38032, - 0x0afa30008, - 0x02002001c, - 0x00c0008fe, - 0x0afa2000c, - 0x08fc68006, + 0x00c000a54, 0x000000027, - 0x000002825, - 0x028a30005, - 0x010600012, - 0x0afa50020, 0x02003ffff, - 0x0afc38006, - 0x023c38032, + 0x01023002f, + 0x000000027, + 0x010200022, + 0x000000027, + 0x023a20018, + 0x00c000a6c, + 0x0afa20004, + 0x083a3002c, + 0x000000027, + 0x010600005, + 0x000000027, + 0x023a20018, + 0x024420014, + 0x00c0007ff, + 0x0afa20004, + 0x020030002, 0x0afa30004, - 0x023c483f8, - 0x0afa40008, - 0x020030004, - 0x00c0009e3, - 0x0afa3000c, - 0x01420015f, - 0x023c58032, - 0x024a30004, - 0x00c00047b, + 0x023c28474, + 0x00c000955, + 0x0afa20008, + 0x020030bb8, + 0x00c000a64, 0x0afa30004, - 0x000013025, - 0x004c0014f, - 0x0afc68006, - 0x004c10008, - 0x000000027, - 0x023c28424, - 0x00c000981, + 0x020020002, + 0x0afa20004, + 0x023c38485, + 0x00c000955, + 0x0afa30008, + 0x023c28494, 0x0afa20004, + 0x020030002, + 0x00c000a5c, + 0x0afa30008, 0x08fa20000, 0x000000027, 0x000400008, - 0x023bd0028, - 0x023c38433, - 0x00c000981, + 0x023bd00d4, + 0x023c3842a, 0x0afa30004, - 0x020020032, - 0x0a3c29732, - 0x03403ffff, - 0x0a7c39736, - 0x023c39732, + 0x023c28443, + 0x0afa20008, + 0x023c3844e, + 0x0afa3000c, + 0x00c000a30, + 0x0afa00010, + 0x023c2845e, + 0x00c0007ff, + 0x0afa20004, + 0x023c3846f, + 0x00c0007ff, 0x0afa30004, - 0x023c48732, - 0x00c000d8b, - 0x0afa40008, - 0x08fc28006, - 0x023c48732, + 0x0080005f6, + 0x000000027, + 0x023bdffe0, + 0x0afbf0000, + 0x023c2849e, + 0x00c000930, 0x0afa20004, + 0x020030032, + 0x0a3c39702, + 0x03402ffff, + 0x0a7c29706, + 0x023c29702, + 0x0afa20004, + 0x023c48702, + 0x00c000e0f, + 0x0afa40008, + 0x08fa30024, + 0x023c48702, + 0x0afa30004, 0x0afa40008, - 0x0afa10024, - 0x00c000a85, + 0x0afa1001c, + 0x00c000a70, 0x0afa1000c, - 0x08fa50024, + 0x08fa5001c, 0x000000027, 0x01025000c, 0x000000027, - 0x023c2843a, + 0x023c284a5, 0x0afa20004, - 0x00c000981, + 0x00c000930, 0x0afa50008, - 0x023c28442, - 0x00c000760, + 0x023c284ad, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x08fc28006, - 0x023c48732, + 0x000000825, + 0x08fa20024, + 0x023c48702, 0x0afa20004, 0x0afa40008, 0x020021000, - 0x00c000a79, + 0x00c000a60, 0x0afa2000c, 0x01c200008, 0x000000027, - 0x023c3844c, - 0x00c000760, + 0x023c384b7, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, + 0x000000825, 0x020030002, 0x014230003, 0x000000027, - 0x008000615, + 0x00800064b, 0x000000027, - 0x023c38732, + 0x023c38702, 0x0afa30004, - 0x023c49732, + 0x023c49702, 0x0afa40008, - 0x0afa10024, - 0x00c000a89, + 0x0afa1001c, + 0x00c000b0d, 0x0afa1000c, 0x014200022, 0x000000027, - 0x023c28455, + 0x023c284c0, 0x0afa20004, - 0x08fa30024, + 0x08fa3001c, 0x000000027, 0x0afa30008, - 0x083c28732, + 0x083c28702, 0x000000027, 0x000021600, 0x000021603, 0x0afa2000c, - 0x083c38733, + 0x083c38703, 0x000000027, 0x000031e00, 0x000031e03, 0x0afa30010, - 0x083c28734, + 0x083c28704, 0x000000027, 0x000021600, 0x000021603, 0x0afa20014, - 0x083c38735, + 0x083c38705, 0x000000027, 0x000031e00, 0x000031e03, - 0x00c000981, + 0x00c000930, 0x0afa30018, - 0x023c28478, - 0x00c000760, + 0x023c284e3, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x083c39732, + 0x000000825, + 0x083c39702, 0x020020033, 0x010620008, 0x000000027, - 0x023c38483, - 0x00c000760, + 0x023c384ee, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x097c29736, + 0x000000825, + 0x097c29706, 0x03403ffff, 0x010430008, 0x000000027, - 0x023c2848c, - 0x00c000760, + 0x023c284f7, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x023c3849a, - 0x00c000981, + 0x000000825, + 0x023c38505, + 0x00c000930, 0x0afa30004, 0x020020034, - 0x0a3c29732, + 0x0a3c29702, 0x03403ffff, - 0x0a7c39736, - 0x023c39732, + 0x0a7c39706, + 0x023c39702, 0x0afa30004, - 0x023c48732, - 0x00c000d8b, + 0x023c48702, + 0x00c000e0f, 0x0afa40008, - 0x08fc28006, - 0x023c48732, + 0x08fa20024, + 0x023c48702, 0x0afa20004, 0x0afa40008, - 0x0afa10024, - 0x00c000a85, + 0x0afa1001c, + 0x00c000a70, 0x0afa1000c, - 0x08fa40024, + 0x08fa4001c, 0x000000027, 0x010240008, 0x000000027, - 0x023c284a5, - 0x00c000760, + 0x023c28510, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x08fc28006, - 0x023c48732, + 0x000000825, + 0x08fa20024, + 0x023c48702, 0x0afa20004, 0x0afa40008, 0x020021000, - 0x00c000a79, + 0x00c000a60, 0x0afa2000c, 0x01c200008, 0x000000027, - 0x023c384b3, - 0x00c000760, + 0x023c3851e, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x023c38732, + 0x000000825, + 0x023c38702, 0x0afa30004, - 0x023c49732, + 0x023c49702, 0x0afa40008, - 0x00c000a89, + 0x00c000b0d, 0x0afa1000c, 0x014200008, 0x000000027, - 0x023c284c0, - 0x00c000760, + 0x023c2852b, + 0x00c0007ed, 0x0afa20004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x097c39736, + 0x000000825, + 0x097c39706, 0x03402ffff, 0x010620008, 0x000000027, - 0x023c384cf, - 0x00c000760, + 0x023c3853a, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x083c29732, + 0x000000825, + 0x083c29702, 0x020030037, 0x01443000d, 0x000000027, 0x020020002, 0x0afa20004, - 0x023c384dd, + 0x023c38548, 0x0afa30008, - 0x023c29732, + 0x023c29702, 0x024420008, - 0x00c0009a6, + 0x00c000955, 0x0afa2000c, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x083c39732, + 0x000000825, + 0x083c39702, 0x020020035, 0x010620008, 0x000000027, - 0x023c384ed, - 0x00c000760, + 0x023c38558, + 0x00c0007ed, 0x0afa30004, 0x08fa20000, - 0x000000027, + 0x023bd0020, 0x000400008, - 0x023bd0028, - 0x023c284fa, - 0x00c000981, - 0x0afa20004, - 0x023c28503, + 0x000000825, + 0x08fa20000, + 0x023bd0020, + 0x000400008, + 0x020010001, + 0x023bdff98, + 0x0afbf0000, + 0x08fc68006, + 0x08fa2006c, + 0x000000027, + 0x01040000a, + 0x000000027, + 0x023c38565, + 0x0afa30004, + 0x023c28026, + 0x0afa20008, + 0x02003001c, + 0x00c000813, + 0x0afa3000c, + 0x08fc68006, + 0x000000027, + 0x000002825, + 0x028a20005, + 0x010400012, + 0x0afa5005c, + 0x02002ffff, + 0x0afc28006, + 0x023c28026, 0x0afa20004, - 0x023c48505, + 0x023c4856c, 0x0afa40008, - 0x00c000a65, - 0x0afa0000c, - 0x004210008, + 0x020020004, + 0x00c000992, + 0x0afa2000c, + 0x01420009d, + 0x023c58026, + 0x024a20004, + 0x00c00047f, + 0x0afa20004, + 0x000013025, + 0x004c0008d, + 0x0afc68006, + 0x004c10008, 0x000000027, - 0x023c28507, - 0x00c000760, + 0x023c2859d, + 0x00c000930, 0x0afa20004, 0x08fa20000, 0x000000027, 0x000400008, - 0x023bd0028, + 0x023bd0068, + 0x00c000627, + 0x0afa60004, + 0x014200005, + 0x000000027, + 0x08fa20000, + 0x000000027, + 0x000400008, + 0x023bd0068, + 0x023c385ac, + 0x0afa30004, + 0x08fc28006, + 0x00c00083f, + 0x0afa20008, + 0x023c385b1, + 0x0afa30004, + 0x08fc28006, + 0x00c00083f, + 0x0afa20008, + 0x023c385b8, + 0x00c000930, + 0x0afa30004, + 0x023c385c1, + 0x0afa30004, + 0x023c485c3, + 0x0afa40008, + 0x00c000a40, + 0x0afa0000c, + 0x004210004, + 0x000000027, + 0x023c285c5, + 0x00c0007ff, + 0x0afa20004, 0x08fc28006, - 0x023c4850c, + 0x023c485ca, 0x0afa20004, 0x0afa40008, 0x020020006, 0x0afa2000c, - 0x023c4850e, + 0x023c485cc, 0x0afa40010, - 0x023c2850f, - 0x00c000a71, + 0x023c285cd, + 0x00c000a58, 0x0afa20014, - 0x004210008, + 0x004210004, 0x000000027, - 0x023c38510, - 0x00c000760, + 0x023c385ce, + 0x00c0007ff, 0x0afa30004, - 0x08fa20000, + 0x00c000882, 0x000000027, - 0x000400008, - 0x023bd0028, - 0x08fc28006, - 0x00c000a69, + 0x023c285d4, + 0x00c000930, 0x0afa20004, - 0x023c3990e, - 0x0afa30004, - 0x023c28516, - 0x0afa20008, - 0x08fa30030, - 0x00c0009cb, - 0x0afa3000c, - 0x023c28524, + 0x08fc58022, + 0x08fc380fe, + 0x000000027, + 0x010600015, + 0x000000027, + 0x023a20018, 0x0afa20004, - 0x023c3990e, - 0x00c000981, + 0x023c385dd, 0x0afa30008, - 0x023c3990e, + 0x00c00097a, + 0x0afa5000c, + 0x08fc380fe, + 0x023a20018, 0x0afa30004, - 0x00c000a75, - 0x0afa00008, - 0x00421000a, - 0x0afc18006, - 0x023c3852a, + 0x0afa20008, + 0x00c000a40, + 0x0afa0000c, + 0x08fc380fe, + 0x023c285e5, 0x0afa30004, - 0x023c2990e, 0x0afa20008, - 0x02003008c, - 0x00c0008fe, - 0x0afa3000c, - 0x008000702, + 0x00c000a40, + 0x0afa0000c, + 0x08fc58022, 0x000000027, - 0x00c00081a, - 0x0afa10004, - 0x004210004, + 0x010a00012, 0x000000027, - 0x023c28533, - 0x00c000760, - 0x0afa20004, - 0x08fc38006, - 0x00c000a69, - 0x0afa30004, - 0x023c2853c, + 0x023a20018, 0x0afa20004, - 0x023c39882, - 0x00c000981, + 0x023c385ee, 0x0afa30008, - 0x023c39882, + 0x00c00097a, + 0x0afa5000c, + 0x023c385fe, 0x0afa30004, - 0x00c000a75, - 0x0afa00008, - 0x00421000a, - 0x0afc18006, - 0x023c38542, + 0x023a20018, + 0x00c000930, + 0x0afa20008, + 0x023a30018, 0x0afa30004, - 0x023c29882, + 0x023c28620, 0x0afa20008, - 0x02003008c, - 0x00c0008fe, - 0x0afa3000c, - 0x008000720, + 0x00c000a40, + 0x0afa0000c, + 0x08fa3006c, 0x000000027, - 0x00c000867, - 0x0afa10004, - 0x023c3854b, - 0x00c000760, + 0x010600010, + 0x000000027, + 0x023c28631, + 0x0afa20004, + 0x023c3863c, + 0x0afa30008, + 0x023c28641, + 0x0afa2000c, + 0x00c000a30, + 0x0afa00010, + 0x023c28658, + 0x00c0007ff, + 0x0afa20004, + 0x08fa20000, + 0x000000027, + 0x000400008, + 0x023bd0068, + 0x023c38645, 0x0afa30004, + 0x023c28650, + 0x0afa20008, + 0x023c38655, + 0x0afa3000c, + 0x00c000a30, + 0x0afa00010, + 0x023c28658, + 0x00c0007ff, + 0x0afa20004, 0x08fa20000, 0x000000027, 0x000400008, - 0x023bd0028, - 0x023c38408, - 0x00c000981, + 0x023bd0068, + 0x023c38581, + 0x00c000930, 0x0afa30004, 0x0200203e8, - 0x00c000a81, + 0x00c000a64, 0x0afa20004, 0x08fc68006, - 0x08fa30020, - 0x0080005d6, - 0x024650001, + 0x08fa2005c, + 0x008000718, + 0x024450001, 0x0afa50004, - 0x023c483fd, + 0x023c48571, + 0x0afa40008, + 0x020030004, + 0x00c000992, + 0x0afa3000c, + 0x014200006, + 0x023c58026, + 0x024a30004, + 0x00c0005ca, + 0x0afa30004, + 0x00800072a, + 0x000013025, + 0x0afa50004, + 0x023c48576, 0x0afa40008, 0x020020003, - 0x00c0009e3, + 0x00c000992, 0x0afa2000c, 0x014200006, - 0x023c58032, + 0x023c58026, 0x024a20003, - 0x00c000539, + 0x00c000541, 0x0afa20004, - 0x0080005e8, + 0x00800072a, 0x000013025, 0x0afa50004, - 0x023c48401, + 0x023c4857a, 0x0afa40008, 0x020030006, - 0x00c0009e3, + 0x00c000992, 0x0afa3000c, 0x014200006, - 0x023c58032, + 0x023c58026, 0x024a30006, - 0x00c000486, + 0x00c00048a, 0x0afa30004, - 0x0080005e8, + 0x00800072a, 0x000013025, - 0x00c000486, + 0x00c00048a, 0x0afa50004, - 0x0080005e8, + 0x00800072a, 0x000013025, 0x023bdffac, 0x0afbf0000, - 0x023a20014, - 0x00c000a6d, - 0x0afa20004, - 0x020030002, - 0x0afa30004, - 0x023c28560, - 0x0afa20008, - 0x08fa30058, - 0x023a20014, - 0x0afa3000c, - 0x00c0009a6, - 0x0afa20010, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0054, - 0x023bdffac, - 0x0afbf0000, 0x023a30014, - 0x00c000a6d, + 0x00c000a4c, 0x0afa30004, 0x020020002, 0x0afa20004, - 0x023c3856e, + 0x023c38663, 0x0afa30008, 0x08fa20058, 0x023a30014, 0x0afa2000c, - 0x00c0009a6, + 0x00c000955, 0x0afa30010, - 0x00c000965, - 0x0afa00004, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd0054, - 0x023bdfff0, + 0x023bdffac, 0x0afbf0000, - 0x08fa30014, - 0x023c4857c, - 0x0afa30004, - 0x00c000a03, - 0x0afa40008, - 0x010200024, - 0x000000027, - 0x08fa30014, - 0x023c4857e, - 0x0afa30004, - 0x00c000a03, - 0x0afa40008, - 0x01020001d, - 0x000000027, - 0x023c5809a, - 0x08ca30000, - 0x000000027, - 0x010600014, - 0x000000027, - 0x0afa5000c, - 0x08ca30000, - 0x000000027, + 0x023a20014, + 0x00c000a4c, + 0x0afa20004, + 0x020030002, 0x0afa30004, - 0x08fa40014, - 0x00c000a03, - 0x0afa40008, - 0x08fa5000c, - 0x014200005, - 0x000000027, + 0x023c28671, + 0x0afa20008, + 0x08fa30058, + 0x023a20014, + 0x0afa3000c, + 0x00c000955, + 0x0afa20010, + 0x00c000914, + 0x0afa00004, 0x08fa20000, - 0x023bd0010, - 0x000400008, - 0x000050825, - 0x024a50008, - 0x08ca30000, - 0x000000027, - 0x01460ffee, 0x000000027, - 0x08fa20000, - 0x023bd0010, 0x000400008, - 0x000000825, - 0x023c5809a, - 0x08ca20000, + 0x023bd0054, + 0x023bdfeec, + 0x0afbf0000, + 0x023c2867f, + 0x0afa20004, + 0x08fa30118, 0x000000027, - 0x01040000e, + 0x0afa30008, + 0x08fa2011c, + 0x00c000930, + 0x0afa2000c, + 0x0afa00004, + 0x023a20010, + 0x0afa20008, + 0x08fa40120, + 0x00c000a60, + 0x0afa4000c, + 0x014200003, + 0x000012825, + 0x008000815, 0x000000027, - 0x023c38583, + 0x004210006, + 0x0afa10110, + 0x023c38688, + 0x00c0007ff, 0x0afa30004, - 0x0afa5000c, - 0x08ca20000, - 0x00c000981, - 0x0afa20008, - 0x08fa3000c, + 0x08fa50110, 0x000000027, - 0x024650008, - 0x08ca20000, + 0x020030001, + 0x010a3000b, 0x000000027, - 0x01440fff4, + 0x023a20010, + 0x000a21021, + 0x0a040ffff, + 0x08fa2011c, + 0x023a30010, + 0x0afa20004, + 0x00c0009e5, + 0x0afa30008, + 0x08fa50110, 0x000000027, 0x08fa20000, - 0x023bd0010, + 0x023bd0114, 0x000400008, - 0x000000825, - 0x023bdffe8, + 0x000050825, + 0x023bdffe0, 0x0afbf0000, - 0x08fa3001c, - 0x000000027, + 0x08fa30024, + 0x02004002f, 0x0afa30004, - 0x08fa40024, - 0x000000027, + 0x00c0009b2, 0x0afa40008, - 0x00c000a7d, - 0x0afa0000c, - 0x004210008, + 0x010200038, 0x000000027, - 0x023c28587, - 0x00c000760, + 0x024250001, + 0x023c28702, 0x0afa20004, - 0x08fa20000, - 0x023bd0018, - 0x000400008, - 0x02001ffff, - 0x08fa20020, - 0x000000027, + 0x023c386aa, + 0x0afa30008, + 0x00c00097a, + 0x0afa5000c, + 0x023c28702, 0x0afa20004, - 0x08fa40028, - 0x000000027, + 0x020040001, 0x0afa40008, - 0x00c000a7d, - 0x0afa0000c, - 0x08fa5002c, - 0x08fa20028, - 0x000000027, - 0x010220008, - 0x000000027, - 0x023c38598, - 0x00c000760, + 0x0200201b6, + 0x00c000a48, + 0x0afa2000c, + 0x004210004, + 0x0afa10018, + 0x023c386b0, + 0x00c0007ff, 0x0afa30004, - 0x08fa20000, - 0x023bd0018, - 0x000400008, - 0x02001ffff, - 0x018a00026, - 0x0afa5002c, - 0x08fa2001c, - 0x023c48732, + 0x023c28702, 0x0afa20004, - 0x0afa40008, - 0x020021000, - 0x00c000a79, + 0x023c386b7, + 0x0afa30008, + 0x08fa20028, + 0x00c00097a, 0x0afa2000c, - 0x01c200008, - 0x000000027, - 0x023c285a7, - 0x00c000760, - 0x0afa20004, - 0x08fa20000, - 0x023bd0018, - 0x000400008, - 0x02001ffff, - 0x08fa20020, - 0x023c48732, - 0x0afa20004, - 0x0afa40008, + 0x023c38702, + 0x00c000a24, + 0x0afa30004, 0x0afa10014, - 0x00c000a85, - 0x0afa1000c, - 0x08fa50014, + 0x023c48702, + 0x00c000a24, + 0x0afa40004, + 0x0afa10010, + 0x08fa40018, + 0x023c38702, + 0x0afa40004, + 0x0afa30008, + 0x08fa40010, + 0x00c000a70, + 0x0afa4000c, + 0x08fa30014, 0x000000027, - 0x010250008, + 0x010230004, 0x000000027, - 0x023c285b8, - 0x00c000760, + 0x023c286ba, + 0x00c0007ff, 0x0afa20004, + 0x08fa30018, + 0x00c000a44, + 0x0afa30004, 0x08fa20000, - 0x023bd0018, - 0x000400008, - 0x02001ffff, - 0x08fa3002c, - 0x0080007ef, - 0x000652823, - 0x08fa20000, - 0x023bd0018, + 0x000000027, 0x000400008, - 0x000000825, - 0x023bdffe4, + 0x023bd0020, + 0x08fa50024, + 0x008000849, + 0x000000027, + 0x023bdfefc, 0x0afbf0000, - 0x08fa20020, - 0x023c48732, + 0x023c286c0, + 0x00c000930, 0x0afa20004, - 0x0afa40008, - 0x020020fff, - 0x00c000a79, - 0x0afa2000c, - 0x01c200005, - 0x000000027, - 0x08fa20000, - 0x023bd001c, - 0x000400008, - 0x02001ffff, - 0x023c38732, - 0x0afa10014, - 0x000611821, - 0x0a0600000, - 0x023c285c7, + 0x023c286c8, 0x0afa20004, - 0x020040001, - 0x00c000a75, + 0x020040002, + 0x00c000a5c, 0x0afa40008, - 0x004210008, + 0x004210005, 0x000000027, - 0x023c385ce, - 0x00c000760, - 0x0afa30004, 0x08fa20000, 0x000000027, 0x000400008, - 0x023bd001c, - 0x08fc680f2, + 0x023bd0104, 0x0afa10018, 0x0afa10004, - 0x0afa60010, - 0x0afa60008, - 0x00c000a7d, + 0x023c486d0, + 0x0afa40008, 0x0afa0000c, + 0x023c286d8, + 0x0afa20010, + 0x023c486d9, + 0x00c000a58, + 0x0afa40014, 0x08fa50018, - 0x08fa20010, - 0x000000027, - 0x010220007, + 0x004210007, 0x000000027, - 0x00c000a69, + 0x00c000a44, 0x0afa50004, 0x08fa20000, - 0x023bd001c, - 0x000400008, - 0x02001ffff, - 0x0afa50004, - 0x023c48732, - 0x0afa40008, - 0x08fa30014, 0x000000027, - 0x024630001, - 0x00c000a85, - 0x0afa3000c, - 0x08fa50018, - 0x08fa40014, - 0x000000027, - 0x024840001, - 0x010240007, - 0x000000027, - 0x00c000a69, - 0x0afa50004, - 0x08fa20000, - 0x023bd001c, 0x000400008, - 0x02001ffff, - 0x00c000a69, + 0x023bd0104, + 0x00c000a44, 0x0afa50004, - 0x08fa20000, - 0x023bd001c, - 0x000400008, - 0x000000825, - 0x023bdffe0, - 0x0afbf0000, - 0x023c385e0, + 0x023c386da, 0x0afa30004, - 0x020040001, - 0x00c000a75, + 0x023a40090, + 0x00c000a68, 0x0afa40008, - 0x004210008, - 0x0afa10018, - 0x023c285e7, - 0x00c000760, - 0x0afa20004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x08fa20024, - 0x023c497ae, - 0x0afa20004, - 0x0afa40008, - 0x020020050, - 0x00c000a79, - 0x0afa2000c, - 0x01c20000b, + 0x004210004, 0x000000027, - 0x023c385f9, - 0x00c000760, - 0x0afa30004, - 0x08fa20018, - 0x00c000a69, + 0x023c286e2, + 0x00c0007ff, 0x0afa20004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x023c3860e, + 0x023a30090, 0x0afa30004, - 0x08fc297c6, - 0x00c000981, + 0x023a2001c, + 0x00c000a74, 0x0afa20008, - 0x08fa20024, - 0x000000027, - 0x0afa20004, - 0x08fa40018, - 0x020020050, - 0x0afa40008, - 0x0afa2000c, - 0x08fc497d6, - 0x000000027, - 0x0afa40010, - 0x08fc297c6, - 0x00c0007c8, - 0x0afa20014, - 0x00421000b, - 0x000000027, - 0x023c38612, - 0x00c000760, + 0x023a30090, 0x0afa30004, - 0x08fa20018, - 0x00c000a69, - 0x0afa20004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x023c38627, - 0x0afa30004, - 0x08fc297ca, - 0x00c000981, + 0x023c286e7, 0x0afa20008, - 0x08fa20024, - 0x000000027, - 0x0afa20004, - 0x08fa40018, - 0x000000027, - 0x0afa40008, - 0x08fc297c6, - 0x000000027, - 0x024420050, - 0x0afa2000c, - 0x08fc497d6, - 0x08fc297c6, - 0x000000027, - 0x000822021, - 0x0afa40010, - 0x08fc297ca, - 0x00c0007c8, - 0x0afa20014, - 0x00421000b, - 0x000000027, - 0x023c3862b, - 0x00c000760, - 0x0afa30004, - 0x08fa20018, - 0x00c000a69, - 0x0afa20004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x023c38640, - 0x0afa30004, - 0x08fc297ce, - 0x00c000981, + 0x08fa3007c, + 0x00c00097a, + 0x0afa3000c, + 0x0afa00004, + 0x023c286eb, + 0x00c0011d5, 0x0afa20008, - 0x08fa30018, - 0x00c000a69, - 0x0afa30004, - 0x023c38644, - 0x0afa30004, + 0x023c286f3, + 0x0afa20004, 0x020040001, - 0x00c000a75, + 0x00c000a5c, 0x0afa40008, - 0x004210008, 0x0afa10018, - 0x023c2864c, - 0x00c000760, - 0x0afa20004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x023c3865f, - 0x0afa30004, - 0x08fc297d2, - 0x00c000981, - 0x0afa20008, - 0x0200303e8, - 0x00c000a81, + 0x023a30090, + 0x00c000a24, 0x0afa30004, + 0x0afa10014, 0x08fa30018, - 0x023c497ae, - 0x0afa30004, - 0x024840024, - 0x0afa40008, - 0x020030004, - 0x00c000a85, - 0x0afa3000c, - 0x020040004, - 0x010240007, - 0x000000027, - 0x023c2866e, - 0x00c000760, - 0x0afa20004, - 0x08fa30018, - 0x00c000a69, - 0x0afa30004, - 0x08fa20000, - 0x000000027, - 0x000400008, - 0x023bd0020, - 0x023bdffec, - 0x0afbf0000, - 0x023c38681, + 0x023a20090, 0x0afa30004, - 0x08fa20018, - 0x000000027, 0x0afa20008, - 0x08fa3001c, - 0x00c000981, + 0x08fa30014, + 0x00c000a70, 0x0afa3000c, - 0x0afa00004, - 0x023c38732, - 0x0afa30008, - 0x08fa40020, - 0x00c000a79, - 0x0afa4000c, - 0x014200003, - 0x000012825, - 0x008000900, - 0x000000027, - 0x004210006, - 0x0afa10010, - 0x023c2868a, - 0x00c000772, + 0x08fa20018, + 0x00c000a44, 0x0afa20004, - 0x08fa50010, - 0x000000027, - 0x020020001, - 0x010a2000b, - 0x000000027, - 0x023c38732, - 0x000a31821, - 0x0a060ffff, - 0x08fa3001c, - 0x023c28732, - 0x0afa30004, - 0x00c000a16, - 0x0afa20008, - 0x08fa50010, - 0x000000027, 0x08fa20000, - 0x023bd0014, + 0x000000027, 0x000400008, - 0x000050825, + 0x023bd0104, 0x023bdfff8, 0x000002825, 0x028a20021, 0x010400011, - 0x023c697fe, + 0x023c6987e, 0x000051080, 0x000461021, 0x08c420000, @@ -1350,7 +1269,7 @@ ulong bootcode[]={ 0x000002025, 0x028820021, 0x01040000d, - 0x023c597fe, + 0x023c5987e, 0x000041080, 0x000451021, 0x08c420000, @@ -1371,10 +1290,10 @@ ulong bootcode[]={ 0x000000027, 0x014400003, 0x000000027, - 0x00c000965, + 0x00c000914, 0x0afa00004, - 0x023c38052, - 0x00c000965, + 0x023c38046, + 0x00c000914, 0x0afa30004, 0x08fa20000, 0x000000027, @@ -1382,7 +1301,7 @@ ulong bootcode[]={ 0x023bd0008, 0x023bdfff0, 0x0afbf0000, - 0x023c697fe, + 0x023c6987e, 0x020040020, 0x004800010, 0x000000027, @@ -1398,11 +1317,11 @@ ulong bootcode[]={ 0x000a0f809, 0x0ac400000, 0x08fa4000c, - 0x023c697fe, - 0x008000969, + 0x023c6987e, + 0x008000918, 0x02484ffff, 0x08fa30014, - 0x00c000a61, + 0x00c000a3c, 0x0afa30004, 0x08fa20000, 0x000000027, @@ -1418,14 +1337,14 @@ ulong bootcode[]={ 0x023a41020, 0x0afa3000c, 0x024840004, - 0x00c0011ca, + 0x00c001252, 0x0afa40010, 0x023a6001c, 0x020020001, 0x0afa20004, 0x0afa60008, 0x000261023, - 0x00c000a85, + 0x00c000a70, 0x0afa2000c, 0x0afa10014, 0x00421000c, @@ -1437,7 +1356,7 @@ ulong bootcode[]={ 0x014400006, 0x0afc38002, 0x023c2800a, - 0x00c000965, + 0x00c000914, 0x0afa20004, 0x08fa50014, 0x000000027, @@ -1455,14 +1374,14 @@ ulong bootcode[]={ 0x023a41024, 0x0afa3000c, 0x024840004, - 0x00c0011ca, + 0x00c001252, 0x0afa40010, 0x08fa21020, 0x023a6001c, 0x0afa20004, 0x0afa60008, 0x000261023, - 0x00c000a85, + 0x00c000a70, 0x0afa2000c, 0x0afa10014, 0x00421000c, @@ -1474,7 +1393,7 @@ ulong bootcode[]={ 0x014400006, 0x0afc38002, 0x023c2800a, - 0x00c000965, + 0x00c000914, 0x0afa20004, 0x08fa50014, 0x000000027, @@ -1485,7 +1404,7 @@ ulong bootcode[]={ 0x023bdffe4, 0x0afbf0000, 0x08fa50020, - 0x08fc280e6, + 0x08fc280e2, 0x024a41000, 0x0afa20014, 0x0afa50004, @@ -1494,11 +1413,11 @@ ulong bootcode[]={ 0x023a40024, 0x0afa2000c, 0x024840004, - 0x00c0011ca, + 0x00c001252, 0x0afa40010, 0x08fa20014, 0x000000027, - 0x0afc280e6, + 0x0afc280e2, 0x08fa20020, 0x000000027, 0x000220823, @@ -1538,6 +1457,38 @@ ulong bootcode[]={ 0x024a50001, 0x003e00008, 0x000000825, + 0x023bdfff0, + 0x0afbf0000, + 0x08fa50014, + 0x083a2001b, + 0x000000027, + 0x014400008, + 0x000000027, + 0x0afa50004, + 0x00c0017ea, + 0x0afa00008, + 0x08fa20000, + 0x000000027, + 0x000400008, + 0x023bd0010, + 0x0afa0000c, + 0x0afa50004, + 0x083a4001b, + 0x000000027, + 0x000042600, + 0x000042603, + 0x00c0017ea, + 0x0afa40008, + 0x010200004, + 0x000000027, + 0x0afa1000c, + 0x0080009c1, + 0x024250001, + 0x08fa1000c, + 0x08fa20000, + 0x000000027, + 0x000400008, + 0x023bd0010, 0x08fa30004, 0x08fa20008, 0x000000027, @@ -1625,13 +1576,25 @@ ulong bootcode[]={ 0x08fa20010, 0x000000027, 0x0afa20004, - 0x00c001762, + 0x00c0017ea, 0x0afa00008, 0x08fa30010, 0x08fa20000, 0x023bd000c, 0x000400008, 0x000230823, + 0x023bdfff4, + 0x0afbf0000, + 0x08fa20010, + 0x023a30010, + 0x0afa20004, + 0x024630004, + 0x00c000a50, + 0x0afa30008, + 0x08fa20000, + 0x000000027, + 0x000400008, + 0x023bd000c, 0x020010008, 0x00000000c, 0x003e00008, @@ -1644,10 +1607,22 @@ ulong bootcode[]={ 0x00000000c, 0x003e00008, 0x000000027, + 0x020010016, + 0x00000000c, + 0x003e00008, + 0x000000027, 0x020010001, 0x00000000c, 0x003e00008, 0x000000027, + 0x020010007, + 0x00000000c, + 0x003e00008, + 0x000000027, + 0x020010009, + 0x00000000c, + 0x003e00008, + 0x000000027, 0x02001000d, 0x00000000c, 0x003e00008, @@ -1660,18 +1635,175 @@ ulong bootcode[]={ 0x00000000c, 0x003e00008, 0x000000027, - 0x020010010, + 0x020010011, + 0x00000000c, + 0x003e00008, + 0x000000027, + 0x020010012, 0x00000000c, 0x003e00008, 0x000000027, - 0x020010011, + 0x020010013, 0x00000000c, 0x003e00008, 0x000000027, - 0x020010014, - 0x00000000c, - 0x003e00008, + 0x020010014, + 0x00000000c, + 0x003e00008, + 0x000000027, + 0x023bdffec, + 0x0afbf0000, + 0x08fa50018, + 0x08fa3001c, + 0x000000027, + 0x0afa30004, + 0x0afa50010, + 0x0afa50008, + 0x02003001c, + 0x00c001932, + 0x0afa3000c, + 0x08fa20010, + 0x08fa3001c, + 0x02445001c, + 0x02463001c, + 0x0afa30004, + 0x0afa50010, + 0x0afa50008, + 0x02003001c, + 0x00c001932, + 0x0afa3000c, + 0x08fa20010, + 0x08fa3001c, + 0x02445001c, + 0x024630038, + 0x0afa30004, + 0x0afa50010, + 0x0afa50008, + 0x02003001c, + 0x00c001932, + 0x0afa3000c, + 0x08fa5001c, + 0x08fa20010, + 0x000000027, + 0x02446001c, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca30054, + 0x024c60004, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca30058, + 0x024c60004, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca3005c, + 0x024c60004, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca30060, + 0x024c60004, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca30064, + 0x024c60004, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x090c40002, + 0x000621825, + 0x0308400ff, + 0x000042400, + 0x090c20003, + 0x000641825, + 0x0304200ff, + 0x000021600, + 0x000621825, + 0x0aca3006c, + 0x024c60008, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x000621825, + 0x0a4a30070, + 0x024c60002, + 0x090c30000, + 0x090c20001, + 0x0306300ff, + 0x0304200ff, + 0x000021200, + 0x000621825, + 0x0a4a30072, + 0x08fa20018, + 0x024c10002, + 0x000220823, + 0x08fa20000, 0x000000027, + 0x000400008, + 0x023bd0014, 0x023bdffec, 0x0afbf0000, 0x08fa6001c, @@ -1743,10 +1875,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x020020040, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, - 0x008000abc, + 0x008000b40, 0x024650040, 0x020020038, 0x010620031, @@ -1774,7 +1906,7 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x08fa3001c, @@ -1784,7 +1916,7 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x08fa3001c, @@ -1794,10 +1926,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, - 0x008000abc, + 0x008000b40, 0x02445001c, 0x090a30000, 0x090a20001, @@ -1806,7 +1938,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c30008, 0x090a20000, 0x090a30001, @@ -1847,7 +1979,7 @@ ulong bootcode[]={ 0x000031e00, 0x000431025, 0x024a50004, - 0x008000abc, + 0x008000b40, 0x0acc20010, 0x02002003f, 0x00043202a, @@ -1881,10 +2013,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, - 0x008000abc, + 0x008000b40, 0x02445001c, 0x090a20000, 0x090a30001, @@ -1893,7 +2025,7 @@ ulong bootcode[]={ 0x000031a00, 0x000431025, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c20002, 0x090a30000, 0x090a20001, @@ -1910,7 +2042,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c3000c, 0x090a20000, 0x090a30001, @@ -1951,7 +2083,7 @@ ulong bootcode[]={ 0x000031e00, 0x000431025, 0x024a50004, - 0x008000abc, + 0x008000b40, 0x0acc20010, 0x020020040, 0x01062005b, @@ -1979,7 +2111,7 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa6001c, 0x08fa20010, @@ -2003,7 +2135,7 @@ ulong bootcode[]={ 0x024a20004, 0x024450001, 0x080420000, - 0x008000abc, + 0x008000b40, 0x0a0c2002a, 0x090a20000, 0x090a30001, @@ -2044,7 +2176,7 @@ ulong bootcode[]={ 0x000031e00, 0x000431025, 0x024a50004, - 0x008000abc, + 0x008000b40, 0x0acc20010, 0x090a30000, 0x090a20001, @@ -2056,7 +2188,7 @@ ulong bootcode[]={ 0x024a20002, 0x024450001, 0x080420000, - 0x008000abc, + 0x008000b40, 0x0a0c2002a, 0x090a20000, 0x090a30001, @@ -2097,7 +2229,7 @@ ulong bootcode[]={ 0x000031e00, 0x000431025, 0x024a50004, - 0x008000abc, + 0x008000b40, 0x0acc20010, 0x02002004c, 0x00043202a, @@ -2142,7 +2274,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0acc3000c, 0x090a30000, 0x090a20001, @@ -2179,7 +2311,7 @@ ulong bootcode[]={ 0x024450001, 0x0acc50010, 0x08cc2000c, - 0x008000abc, + 0x008000b40, 0x000a22821, 0x090a20000, 0x090a30001, @@ -2200,7 +2332,7 @@ ulong bootcode[]={ 0x024650001, 0x0acc50010, 0x08cc3000c, - 0x008000abc, + 0x008000b40, 0x000a32821, 0x090a30000, 0x090a20001, @@ -2233,7 +2365,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0acc3000c, 0x090a20000, 0x090a30001, @@ -2242,7 +2374,7 @@ ulong bootcode[]={ 0x000031a00, 0x000431025, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c20002, 0x020020049, 0x01062001d, @@ -2264,7 +2396,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c30002, 0x090a20000, 0x090a30001, @@ -2273,7 +2405,7 @@ ulong bootcode[]={ 0x000031a00, 0x000431025, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c20002, 0x090a30000, 0x090a20001, @@ -2282,7 +2414,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c30002, 0x090a20000, 0x090a30001, @@ -2291,7 +2423,7 @@ ulong bootcode[]={ 0x000031a00, 0x000431025, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c20002, 0x020020050, 0x00043202a, @@ -2319,7 +2451,7 @@ ulong bootcode[]={ 0x000021200, 0x000621825, 0x024a50002, - 0x008000abc, + 0x008000b40, 0x0a4c30002, 0x090a20000, 0x090a30001, @@ -2334,10 +2466,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x020020074, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, - 0x008000abc, + 0x008000b40, 0x024650074, 0x090a30000, 0x090a20001, @@ -2352,10 +2484,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x020030074, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, - 0x008000abc, + 0x008000b40, 0x024450074, 0x090a20000, 0x090a30001, @@ -2378,10 +2510,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02002001c, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, - 0x008000abc, + 0x008000b40, 0x02465001c, 0x020020051, 0x01062fe27, @@ -2409,10 +2541,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02002001e, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, - 0x008000abc, + 0x008000b40, 0x02465001e, 0x090a30000, 0x090a20001, @@ -2427,7 +2559,7 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x08fa3001c, @@ -2437,10 +2569,10 @@ ulong bootcode[]={ 0x0afa50010, 0x0afa50008, 0x020030024, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, - 0x008000abc, + 0x008000b40, 0x024450024, 0x023bdffec, 0x0afbf0000, @@ -2504,7 +2636,7 @@ ulong bootcode[]={ 0x024a30008, 0x0afa30008, 0x020020040, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x08fa2001c, @@ -2541,7 +2673,7 @@ ulong bootcode[]={ 0x024a20008, 0x0afa20008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x02003001c, @@ -2552,7 +2684,7 @@ ulong bootcode[]={ 0x000000027, 0x024420024, 0x0afa20008, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x02003001c, @@ -2563,7 +2695,7 @@ ulong bootcode[]={ 0x000000027, 0x024420040, 0x0afa20008, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x000000027, @@ -2669,7 +2801,7 @@ ulong bootcode[]={ 0x024a2000e, 0x0afa20008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x000000027, @@ -2795,7 +2927,7 @@ ulong bootcode[]={ 0x024a2000e, 0x0afa20008, 0x02003001c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa70018, 0x08fa20010, @@ -3032,7 +3164,7 @@ ulong bootcode[]={ 0x000000027, 0x0afa20008, 0x08ca3000c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20018, 0x08fa30010, @@ -3069,7 +3201,7 @@ ulong bootcode[]={ 0x000000027, 0x0afa20008, 0x08ca3000c, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20018, 0x08fa30010, @@ -3267,7 +3399,7 @@ ulong bootcode[]={ 0x024a30008, 0x0afa30008, 0x020020074, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x08fa2001c, @@ -3291,7 +3423,7 @@ ulong bootcode[]={ 0x024a20008, 0x0afa20008, 0x020030074, - 0x00c0018aa, + 0x00c001932, 0x0afa3000c, 0x08fa20010, 0x000000027, @@ -3326,7 +3458,7 @@ ulong bootcode[]={ 0x024a3000e, 0x0afa30008, 0x02002001c, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x08fa2001c, @@ -3363,7 +3495,7 @@ ulong bootcode[]={ 0x024a30024, 0x0afa30008, 0x02002001e, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x08fa2001c, @@ -3387,7 +3519,7 @@ ulong bootcode[]={ 0x024a30008, 0x0afa30008, 0x02002001c, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x020020024, @@ -3398,7 +3530,7 @@ ulong bootcode[]={ 0x000000027, 0x024630024, 0x0afa30008, - 0x00c0018aa, + 0x00c001932, 0x0afa2000c, 0x08fa30010, 0x08fa2001c, @@ -3408,88 +3540,92 @@ ulong bootcode[]={ 0x000000027, 0x000400008, 0x023bd0014, + 0x020010023, + 0x00000000c, + 0x003e00008, + 0x000000027, 0x023bdfff0, 0x0afbf0000, 0x03c020000, - 0x034425154, - 0x0afc28106, + 0x034425374, + 0x0afc2810e, 0x020030001, - 0x0a3c386dd, + 0x0a3c39829, 0x020020001, - 0x0a3c286df, + 0x0a3c2982b, 0x020030001, - 0x0a3c386d5, + 0x0a3c39821, 0x020020001, - 0x0a3c2871a, + 0x0a3c29866, 0x020030001, - 0x0a3c3871e, + 0x0a3c3986a, 0x020020001, - 0x0a3c28727, + 0x0a3c29873, 0x03c030000, - 0x034634ac0, - 0x0afc3810a, + 0x034634ce0, + 0x0afc38112, 0x020020002, - 0x0a3c28716, + 0x0a3c29862, 0x020030002, - 0x0a3c38721, + 0x0a3c3986d, 0x020020002, - 0x0a3c2872a, + 0x0a3c29876, 0x020030002, - 0x0a3c3870a, + 0x0a3c39856, 0x03c020000, - 0x034425208, - 0x0afc2810e, + 0x034425428, + 0x0afc28116, 0x020030003, - 0x0a3c38717, + 0x0a3c39863, 0x020020003, - 0x0a3c28718, + 0x0a3c29864, 0x020030003, - 0x0a3c38719, + 0x0a3c39865, 0x020020003, - 0x0a3c286f7, + 0x0a3c29843, 0x020030003, - 0x0a3c386f9, + 0x0a3c39845, 0x03c020000, - 0x03442508c, - 0x0afc28112, + 0x0344252ac, + 0x0afc2811a, 0x020030004, - 0x0a3c38715, + 0x0a3c39861, 0x03c020000, - 0x0344250d4, - 0x0afc28116, + 0x0344252f4, + 0x0afc2811e, 0x020030005, - 0x0a3c38725, + 0x0a3c39871, 0x03c020000, - 0x034425124, - 0x0afc2811a, + 0x034425344, + 0x0afc28122, 0x020030006, - 0x0a3c386d7, + 0x0a3c39823, 0x020020007, - 0x0afc280da, - 0x023c3999a, + 0x0afc2808e, + 0x023c3977e, 0x0afa30004, 0x020020001, 0x0afa20008, 0x020030080, - 0x00c001815, + 0x00c00189d, 0x0afa3000c, - 0x0a3c0999a, - 0x0a3c099a3, - 0x0a3c099a4, - 0x0a3c099bf, + 0x0a3c0977e, + 0x0a3c09787, + 0x0a3c09788, + 0x0a3c097a3, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd0010, 0x023bdfffc, 0x0afbf0000, - 0x08fc680da, + 0x08fc6808e, 0x000000027, 0x014c00005, 0x000000027, - 0x00c001151, + 0x00c0011d9, 0x000000027, - 0x08fc680da, + 0x08fc6808e, 0x000000027, 0x083a3000b, 0x028c20028, @@ -3506,19 +3642,19 @@ ulong bootcode[]={ 0x000021603, 0x000021600, 0x000021603, - 0x023c386b2, + 0x023c397fe, 0x000431021, 0x024c30001, - 0x0afc380da, + 0x0afc3808e, 0x0a0460000, 0x000051600, 0x000021603, 0x000021600, 0x000021603, - 0x023c386b2, + 0x023c397fe, 0x000431021, 0x080420000, - 0x023c38102, + 0x023c3810a, 0x000021600, 0x000021603, 0x000021080, @@ -3532,20 +3668,20 @@ ulong bootcode[]={ 0x023bdffcc, 0x0afbf0000, 0x08fab0044, - 0x023ce999a, - 0x08fca80e6, + 0x023ce977e, + 0x08fca80e2, 0x08fa60040, - 0x08fc2806a, + 0x08fc2805e, 0x000000027, 0x0afa2001c, - 0x08fc380d6, + 0x08fc380de, 0x000000027, 0x0afa30018, 0x08fa70038, 0x08fa3003c, 0x000000027, 0x0246fffff, - 0x0afcf80d6, + 0x0afcf80de, 0x001e74823, 0x000002825, 0x000a9202a, @@ -3564,9 +3700,9 @@ ulong bootcode[]={ 0x000000027, 0x000c51821, 0x000e53821, - 0x0afc7806a, + 0x0afc7805e, 0x001455021, - 0x0afca80e6, + 0x0afca80e2, 0x024660001, 0x080630000, 0x020020025, @@ -3586,10 +3722,10 @@ ulong bootcode[]={ 0x0a0e00000, 0x08fa3001c, 0x000000027, - 0x0afc3806a, + 0x0afc3805e, 0x08fa20018, 0x000000027, - 0x0afc280d6, + 0x0afc280de, 0x08fa20000, 0x023bd0034, 0x000400008, @@ -3603,7 +3739,7 @@ ulong bootcode[]={ 0x02002000a, 0x014a20003, 0x0254a0001, - 0x0080011da, + 0x008001262, 0x000005025, 0x020020009, 0x014a2ffc2, @@ -3611,7 +3747,7 @@ ulong bootcode[]={ 0x025430007, 0x0201cfff8, 0x0007c5024, - 0x0080011da, + 0x008001262, 0x000000027, 0x02008fc18, 0x0200dfc18, @@ -3625,7 +3761,7 @@ ulong bootcode[]={ 0x000052e03, 0x014a00003, 0x000000027, - 0x0080011da, + 0x008001262, 0x024c6ffff, 0x02002002e, 0x014a20007, @@ -3634,7 +3770,7 @@ ulong bootcode[]={ 0x015020002, 0x000000027, 0x000004025, - 0x008001221, + 0x0080012a9, 0x000006825, 0x028a20031, 0x014400025, @@ -3656,11 +3792,11 @@ ulong bootcode[]={ 0x000000027, 0x014a0ffe4, 0x000094025, - 0x0080011da, + 0x008001262, 0x024c6ffff, 0x014a0ffe0, 0x000096825, - 0x0080011da, + 0x008001262, 0x024c6ffff, 0x02002000a, 0x001220018, @@ -3673,7 +3809,7 @@ ulong bootcode[]={ 0x000000027, 0x000052e00, 0x000052e03, - 0x00800123d, + 0x0080012c5, 0x02469ffd0, 0x020030030, 0x014a30006, @@ -3681,7 +3817,7 @@ ulong bootcode[]={ 0x02003fc18, 0x011030003, 0x000000027, - 0x00800123c, + 0x0080012c4, 0x000000027, 0x02002002a, 0x014a20009, @@ -3690,9 +3826,9 @@ ulong bootcode[]={ 0x02002fc18, 0x015020003, 0x0256b0004, - 0x008001221, + 0x0080012a9, 0x000054025, - 0x008001221, + 0x0080012a9, 0x000056825, 0x030a5007f, 0x0afab0044, @@ -3704,10 +3840,10 @@ ulong bootcode[]={ 0x0afac0028, 0x0afac0010, 0x0afa50014, - 0x023c286b2, + 0x023c297fe, 0x000451021, 0x080420000, - 0x023c38102, + 0x023c3810a, 0x000021600, 0x000021603, 0x000021080, @@ -3716,24 +3852,24 @@ ulong bootcode[]={ 0x000000027, 0x00040f809, 0x000000027, - 0x08fcf80d6, + 0x08fcf80de, 0x08fad002c, 0x08fab0044, - 0x08fca80e6, + 0x08fca80e2, 0x08fa80030, - 0x08fc7806a, + 0x08fc7805e, 0x08fa60040, 0x004210005, - 0x023ce999a, + 0x023ce977e, 0x08fa40028, 0x000011023, - 0x008001221, + 0x0080012a9, 0x000826025, - 0x0080011da, + 0x008001262, 0x001615821, 0x000e51021, 0x024a50001, - 0x0080011dd, + 0x008001265, 0x0a0480000, 0x023bdfff0, 0x0afbf0000, @@ -3751,13 +3887,13 @@ ulong bootcode[]={ 0x0afa30004, 0x0afa40008, 0x08fa3001c, - 0x00c00138b, + 0x00c001413, 0x0afa3000c, 0x08fa20000, 0x000000027, 0x000400008, 0x023bd0010, - 0x0080012a3, + 0x00800132b, 0x000042023, 0x023bdffa8, 0x0afbf0000, @@ -3850,7 +3986,7 @@ ulong bootcode[]={ 0x02002fc18, 0x0afa30008, 0x0afa2000c, - 0x00c001298, + 0x00c001320, 0x0afa70010, 0x08fa10028, 0x08fa20000, @@ -3869,12 +4005,12 @@ ulong bootcode[]={ 0x024a5ffff, 0x001651021, 0x020040030, - 0x0080012ff, + 0x008001387, 0x0a0440000, 0x024a5ffff, 0x001651021, 0x020040078, - 0x00800131b, + 0x0080013a3, 0x0a0440000, 0x030e30040, 0x01060001e, @@ -3896,27 +4032,27 @@ ulong bootcode[]={ 0x000000027, 0x01d200003, 0x000000027, - 0x0080012f0, + 0x008001378, 0x000000027, 0x01d000003, 0x000000027, - 0x0080012f0, + 0x008001378, 0x000000027, 0x030e20040, 0x01440ffa0, 0x024a5ffff, 0x0010a001b, - 0x0080012e5, + 0x00800136d, 0x000003010, 0x0010a001b, - 0x00800132c, + 0x0080013b4, 0x000004012, 0x0200d0001, - 0x0080012dd, + 0x008001365, 0x000084023, 0x08ca80000, 0x020030004, - 0x0080012d8, + 0x008001360, 0x0afa30028, 0x08ca20000, 0x000000027, @@ -3928,15 +4064,15 @@ ulong bootcode[]={ 0x000031c03, 0x020020004, 0x0afa20028, - 0x0080012d8, + 0x008001360, 0x000034025, 0x08ca80000, 0x020030004, - 0x0080012d8, + 0x008001360, 0x0afa30028, 0x08ca80000, 0x020030004, - 0x0080012d8, + 0x008001360, 0x0afa30028, 0x020030030, 0x01043000a, @@ -3944,11 +4080,11 @@ ulong bootcode[]={ 0x020030048, 0x010430003, 0x000000027, - 0x0080012d5, + 0x00800135d, 0x000000027, 0x08ca90000, 0x020030004, - 0x0080012d8, + 0x008001360, 0x0afa30028, 0x08ca30000, 0x000000027, @@ -3958,14 +4094,14 @@ ulong bootcode[]={ 0x03042ffff, 0x020030004, 0x0afa30028, - 0x0080012d8, + 0x008001360, 0x000024025, - 0x0080012c5, + 0x00800134d, 0x0200a000a, 0x0200e0001, - 0x0080012c5, + 0x00800134d, 0x0200a0010, - 0x0080012c5, + 0x00800134d, 0x0200a0008, 0x020030075, 0x011430006, @@ -3973,22 +4109,22 @@ ulong bootcode[]={ 0x020030078, 0x01143fff7, 0x000000027, - 0x0080012c5, + 0x00800134d, 0x000000027, 0x0200a000a, - 0x0080012c5, + 0x00800134d, 0x034e70020, 0x023bdfff0, 0x0afbf0000, 0x08fa30014, - 0x00c000a55, + 0x00c000a24, 0x0afa30004, 0x08fac0014, 0x08faa0018, - 0x08fc980d6, - 0x08fc880e6, + 0x08fc980de, + 0x08fc880e2, 0x08fa7001c, - 0x08fc6806a, + 0x08fc6805e, 0x02002fc18, 0x011420003, 0x000012825, @@ -4006,25 +4142,25 @@ ulong bootcode[]={ 0x000000027, 0x01ce00003, 0x000000027, - 0x00800139b, + 0x008001423, 0x000000027, 0x000c9202b, 0x010800005, 0x000000027, 0x000061025, 0x024c60001, - 0x0afc6806a, + 0x0afc6805e, 0x0a04b0000, 0x025080001, 0x02002000a, 0x015620008, - 0x0afc880e6, + 0x0afc880e2, 0x000004025, - 0x0afc080e6, + 0x0afc080e2, 0x02003fc18, 0x010e3ffe3, 0x000000027, - 0x00800139b, + 0x008001423, 0x024e7ffff, 0x020020009, 0x01562fff9, @@ -4034,8 +4170,8 @@ ulong bootcode[]={ 0x0007c4024, 0x02003fc18, 0x010e3ffd8, - 0x0afc880e6, - 0x00800139b, + 0x0afc880e2, + 0x008001423, 0x024e7ffff, 0x02002fc18, 0x011420003, @@ -4055,13 +4191,13 @@ ulong bootcode[]={ 0x000000027, 0x000061825, 0x024c60001, - 0x0afc6806a, + 0x0afc6805e, 0x020040020, 0x0a0640000, 0x025080001, 0x024a50001, - 0x0080013d0, - 0x0afc880e6, + 0x008001458, + 0x0afc880e2, 0x000aa202a, 0x01080ffba, 0x000000027, @@ -4070,24 +4206,24 @@ ulong bootcode[]={ 0x000000027, 0x000061025, 0x024c60001, - 0x0afc6806a, + 0x0afc6805e, 0x020040020, 0x0a0440000, 0x025080001, 0x024a50001, - 0x0080013df, - 0x0afc880e6, + 0x008001467, + 0x0afc880e2, 0x023bdffe4, 0x0afbf0000, - 0x08fc280da, + 0x08fc2808e, 0x000000027, 0x01440001f, 0x000000027, - 0x00c001151, + 0x00c0011d9, 0x000000027, 0x08fa40030, 0x08fa30020, - 0x023c186b2, + 0x023c197fe, 0x0afa30004, 0x08fa20024, 0x000240821, @@ -4100,7 +4236,7 @@ ulong bootcode[]={ 0x0afa20010, 0x0afa40014, 0x080210000, - 0x023c28102, + 0x023c2810a, 0x000010e00, 0x000010e03, 0x000010880, @@ -4124,7 +4260,7 @@ ulong bootcode[]={ 0x0afa30004, 0x0afa00008, 0x02002fc18, - 0x00c00138b, + 0x00c001413, 0x0afa2000c, 0x08fa20000, 0x023bd001c, @@ -4142,7 +4278,7 @@ ulong bootcode[]={ 0x08fa3001c, 0x02002fc18, 0x0afa30008, - 0x00c00138b, + 0x00c001413, 0x0afa2000c, 0x08fa20000, 0x023bd0014, @@ -4162,20 +4298,20 @@ ulong bootcode[]={ 0x000000027, 0x0afa3000c, 0x08fa20024, - 0x00c001298, + 0x00c001320, 0x0afa20010, 0x08fa20000, 0x023bd0014, 0x000400008, 0x020010004, - 0x08fc5806a, - 0x08fc280d6, + 0x08fc5805e, + 0x08fc280de, 0x000000027, 0x000a2202b, 0x010800005, 0x000000027, 0x024a20001, - 0x0afc2806a, + 0x0afc2805e, 0x020040025, 0x0a0a40000, 0x003e00008, @@ -4236,18 +4372,18 @@ ulong bootcode[]={ 0x0e7a6004c, 0x0e7a70004, 0x0e7a60008, - 0x00c001851, + 0x00c0018d9, 0x000000027, 0x01020000e, 0x000000027, - 0x023c2801a, + 0x023c280ee, 0x0afa20004, 0x08fa300a8, 0x02002fc18, 0x0afa30008, 0x0afa2000c, 0x08fa300b0, - 0x00c001298, + 0x00c001320, 0x0afa30010, 0x08fa20000, 0x023bd00a0, @@ -4258,18 +4394,18 @@ ulong bootcode[]={ 0x020030001, 0x0e7a10004, 0x0e7a00008, - 0x00c001881, + 0x00c001909, 0x0afa3000c, 0x01020000e, 0x000000027, - 0x023c2801e, + 0x023c280f2, 0x0afa20004, 0x08fa300a8, 0x02002fc18, 0x0afa30008, 0x0afa2000c, 0x08fa300b0, - 0x00c001298, + 0x00c001320, 0x0afa30010, 0x08fa20000, 0x023bd00a0, @@ -4280,21 +4416,21 @@ ulong bootcode[]={ 0x02003ffff, 0x0e7a10004, 0x0e7a00008, - 0x00c001881, + 0x00c001909, 0x0afa3000c, 0x08fad00b4, 0x08fac00ac, 0x023a90050, 0x01020000e, 0x023ae0078, - 0x023c28023, + 0x023c280f7, 0x0afa20004, 0x08fa300a8, 0x02002fc18, 0x0afa30008, 0x0afa2000c, 0x08fa300b0, - 0x00c001298, + 0x00c001320, 0x0afa30010, 0x08fa20000, 0x023bd00a0, @@ -4338,14 +4474,14 @@ ulong bootcode[]={ 0x023a20034, 0x0e7a10004, 0x0e7a00008, - 0x00c00178e, + 0x00c001816, 0x0afa2000c, 0x08fa20034, 0x04444f800, 0x044821000, 0x034850003, - 0x0c7c580de, - 0x0c7c480e2, + 0x0c7c580d6, + 0x0c7c480da, 0x0468010a1, 0x046241002, 0x038a50002, @@ -4362,7 +4498,7 @@ ulong bootcode[]={ 0x000023043, 0x0afa60030, 0x000061023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x0c7a30048, 0x0c7a2004c, @@ -4374,7 +4510,7 @@ ulong bootcode[]={ 0x08fa30034, 0x000000027, 0x000431023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x08fad00b4, 0x023ae0078, @@ -4397,7 +4533,7 @@ ulong bootcode[]={ 0x08fa30034, 0x000000027, 0x000431023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x08fad00b4, 0x08fac00ac, @@ -4406,10 +4542,10 @@ ulong bootcode[]={ 0x0c7a2003c, 0x000000027, 0x046201182, - 0x008001522, + 0x0080015aa, 0x023ae0078, - 0x0c7c180ea, - 0x0c7c080ee, + 0x0c7c180e6, + 0x0c7c080ea, 0x000000027, 0x04626003e, 0x000000027, @@ -4423,7 +4559,7 @@ ulong bootcode[]={ 0x08fa30034, 0x000000027, 0x000431023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x08fad00b4, 0x08fac00ac, @@ -4432,7 +4568,7 @@ ulong bootcode[]={ 0x0c7a2003c, 0x000000027, 0x046201182, - 0x008001539, + 0x0080015c1, 0x023ae0078, 0x02003fc18, 0x015830002, @@ -4467,7 +4603,7 @@ ulong bootcode[]={ 0x0200cffff, 0x0afac00ac, 0x0200d0065, - 0x0080014e6, + 0x00800156e, 0x0afad00b4, 0x0c7a70048, 0x0c7a6004c, @@ -4481,7 +4617,7 @@ ulong bootcode[]={ 0x08fa30034, 0x02002ffff, 0x000431023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x08fad00b4, 0x023ae0078, @@ -4503,7 +4639,7 @@ ulong bootcode[]={ 0x000671823, 0x004600134, 0x0afa7002c, - 0x00c001739, + 0x00c0017c1, 0x0afa30004, 0x0c7a30040, 0x0c7a20044, @@ -4512,7 +4648,7 @@ ulong bootcode[]={ 0x046201083, 0x0e7a30004, 0x0e7a20008, - 0x00c0016f7, + 0x00c00177f, 0x000000027, 0x08fad00b4, 0x023ae0078, @@ -4570,7 +4706,7 @@ ulong bootcode[]={ 0x024e70001, 0x02484fff6, 0x0a0440001, - 0x0080015c9, + 0x008001651, 0x024c6ffff, 0x010e00007, 0x0200b0001, @@ -4638,7 +4774,7 @@ ulong bootcode[]={ 0x020030030, 0x0a0430000, 0x024e7ffff, - 0x008001610, + 0x008001698, 0x024c60001, 0x019000013, 0x000000027, @@ -4658,7 +4794,7 @@ ulong bootcode[]={ 0x0256b0001, 0x0a0430000, 0x02508ffff, - 0x008001621, + 0x0080016a9, 0x024c60001, 0x08fa300b0, 0x000000027, @@ -4687,7 +4823,7 @@ ulong bootcode[]={ 0x0afa30008, 0x0afa2000c, 0x08fa300b0, - 0x00c001298, + 0x00c001320, 0x0afa30010, 0x08fa20000, 0x023bd00a0, @@ -4743,19 +4879,19 @@ ulong bootcode[]={ 0x000001810, 0x024630030, 0x0a0430000, - 0x008001648, + 0x0080016d0, 0x024c60001, 0x000061825, 0x001231021, 0x02003002b, 0x0a0430000, - 0x008001669, + 0x0080016f1, 0x024c60001, 0x000061025, 0x001221821, 0x020020065, 0x0a0620000, - 0x00800165f, + 0x0080016e7, 0x024c60001, 0x020030067, 0x011a30006, @@ -4763,7 +4899,7 @@ ulong bootcode[]={ 0x020030068, 0x011a30003, 0x000000027, - 0x008001642, + 0x0080016ca, 0x000000027, 0x024c7ffff, 0x004e00006, @@ -4783,11 +4919,11 @@ ulong bootcode[]={ 0x000000027, 0x01107ff93, 0x000073025, - 0x008001642, + 0x0080016ca, 0x024c60001, - 0x0080016a7, + 0x00800172f, 0x02508ffff, - 0x00800169f, + 0x008001727, 0x024e7ffff, 0x08fa30034, 0x02002ffff, @@ -4797,7 +4933,7 @@ ulong bootcode[]={ 0x000003825, 0x08fa30034, 0x0200d0068, - 0x0080015fd, + 0x008001685, 0x001835023, 0x08fa200b0, 0x000000027, @@ -4808,17 +4944,17 @@ ulong bootcode[]={ 0x001221821, 0x02002002b, 0x0a0620000, - 0x0080015ee, + 0x008001676, 0x024c60001, - 0x0c7c180ea, - 0x0c7c080ee, + 0x0c7c180e6, + 0x0c7c080ea, 0x000000027, 0x046203182, 0x0e7a70040, 0x0e7a60044, 0x0e7a70004, 0x0e7a60008, - 0x00c0016f7, + 0x00c00177f, 0x000000027, 0x08fad00b4, 0x023ae0078, @@ -4845,14 +4981,14 @@ ulong bootcode[]={ 0x046222181, 0x0e7a70040, 0x0e7a60044, - 0x0080015c0, + 0x008001648, 0x000000027, - 0x00800155c, + 0x0080015e4, 0x0258cffff, 0x020020001, 0x0afa20014, 0x025ad0020, - 0x0080014e6, + 0x00800156e, 0x0afad00b4, 0x023bdffe8, 0x0afbf0000, @@ -4869,7 +5005,7 @@ ulong bootcode[]={ 0x04624c081, 0x0e7a30004, 0x0e7a20008, - 0x00c0017dc, + 0x00c001864, 0x0afa2000c, 0x04620c032, 0x000000027, @@ -4898,7 +5034,7 @@ ulong bootcode[]={ 0x023a2001c, 0x0e7a30004, 0x0e7a20008, - 0x00c0017dc, + 0x00c001864, 0x0afa2000c, 0x0c7a1001c, 0x0c7a00020, @@ -4914,7 +5050,7 @@ ulong bootcode[]={ 0x04624c081, 0x0e7a30004, 0x0e7a20008, - 0x00c0016f7, + 0x00c00177f, 0x000000027, 0x08fa20000, 0x023bd000c, @@ -4927,7 +5063,7 @@ ulong bootcode[]={ 0x004810008, 0x000000027, 0x000041023, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x08fa20000, 0x023bd0014, @@ -4937,7 +5073,7 @@ ulong bootcode[]={ 0x01060000a, 0x000000027, 0x000041880, - 0x023c2806e, + 0x023c28066, 0x000621821, 0x08c630000, 0x08fa20000, @@ -4948,12 +5084,12 @@ ulong bootcode[]={ 0x000042843, 0x0afa50010, 0x000851823, - 0x00c001739, + 0x00c0017c1, 0x0afa30004, 0x0e7a10008, 0x0e7a0000c, 0x08fa20010, - 0x00c001739, + 0x00c0017c1, 0x0afa20004, 0x0c7a30008, 0x0c7a2000c, @@ -5108,7 +5244,7 @@ ulong bootcode[]={ 0x00045202a, 0x014800013, 0x000000027, - 0x08fc380f6, + 0x08fc38102, 0x08fa40008, 0x000a31807, 0x0201cffff, @@ -5130,7 +5266,7 @@ ulong bootcode[]={ 0x00065202a, 0x01480fff3, 0x000000027, - 0x08fc380fa, + 0x08fc38106, 0x024a2ffea, 0x000431007, 0x0201cffff, @@ -5138,7 +5274,7 @@ ulong bootcode[]={ 0x08fa4000c, 0x000000027, 0x000821024, - 0x0080017fd, + 0x008001885, 0x0afa2000c, 0x023bdfff0, 0x08fa3001c, @@ -5219,7 +5355,7 @@ ulong bootcode[]={ 0x000000825, 0x0e7a50004, 0x0e7a40008, - 0x00c001881, + 0x00c001909, 0x0afa0000c, 0x014200005, 0x000000027, @@ -5397,7 +5533,7 @@ ulong bootcode[]={ 0x000000027, 0x0a0c8ffff, 0x024c6ffff, - 0x008001910, + 0x008001998, 0x024e7ffff, 0x000000000, 0x000000000, @@ -5405,10 +5541,7 @@ ulong bootcode[]={ 0x074206572, 0x0726f7273, 0x000000000, - 0x04e614e00, - 0x02b496e66, - 0x0002d496e, - 0x066000000, + 0x000000000, 0x000000000, 0x000000000, 0x000000000, @@ -5426,6 +5559,7 @@ ulong bootcode[]={ 0x061747573, 0x000000000, 0x000000000, + 0x000000000, 0x000000001, 0x00000000a, 0x000000064, @@ -5437,18 +5571,18 @@ ulong bootcode[]={ 0x005f5e100, 0x03b9aca00, 0x000000000, - 0x0000071a0, - 0x0000071a5, - 0x0000071ba, - 0x0000071c1, - 0x0000071d6, - 0x0000071dc, - 0x0000071f1, + 0x0000071a8, + 0x0000071ad, + 0x0000071c2, + 0x0000071c9, + 0x0000071de, + 0x0000071e4, 0x0000071f9, - 0x00000720e, - 0x000007212, - 0x000000000, - 0x000000000, + 0x000007201, + 0x000007216, + 0x00000721a, + 0x00000722f, + 0x000007236, 0x000000000, 0x000000000, 0x000000000, @@ -5457,13 +5591,17 @@ ulong bootcode[]={ 0x03fd34413, 0x055475a32, 0x000000000, + 0x000000000, 0x040240000, 0x000000000, - 0x0803ff000, + 0x04e614e00, + 0x02b496e66, + 0x0002d496e, + 0x066000000, + 0x000000000, 0x0001fffff, 0x07fffffff, - 0x000000000, - 0x000004fb8, + 0x0000051d8, 0x000000000, 0x000000000, 0x000000000, @@ -5536,7 +5674,14 @@ ulong bootcode[]={ 0x074203038, 0x030303262, 0x030343236, - 0x035640023, + 0x035640066, + 0x06f726e61, + 0x07800636f, + 0x06e6e6563, + 0x074203030, + 0x030303737, + 0x030316432, + 0x062610023, 0x0632f636f, 0x06e730023, 0x0632f636f, @@ -5547,288 +5692,299 @@ ulong bootcode[]={ 0x06f6f7465, 0x073002f6d, 0x06970732f, - 0x039706f77, - 0x065720023, - 0x0332f6269, - 0x074330063, - 0x0616e2774, - 0x020636f6e, - 0x076657274, - 0x0206e6f6e, - 0x065742061, + 0x039002333, + 0x02f626974, + 0x033006361, + 0x06e277420, + 0x0636f6e76, + 0x065727420, + 0x06e6f6e65, + 0x074206164, + 0x064726573, + 0x07320746f, + 0x020657468, + 0x065722061, 0x064647265, - 0x073732074, - 0x06f206574, - 0x068657220, - 0x061646472, - 0x06573730a, - 0x000236c2f, + 0x073730a00, + 0x0236c2f31, + 0x02f63746c, + 0x0006f7065, + 0x06e696e67, + 0x020236c2f, 0x0312f6374, - 0x06c006f70, - 0x0656e696e, - 0x06720236c, - 0x02f312f63, - 0x0746c0063, - 0x06f6e6e65, - 0x063742030, - 0x078393030, - 0x000636f6e, - 0x06e656374, - 0x020307839, - 0x030300070, + 0x06c00636f, + 0x06e6e6563, + 0x074203078, + 0x039303000, + 0x0636f6e6e, + 0x065637420, + 0x030783930, + 0x030007075, + 0x07368206e, + 0x06f657468, + 0x065720070, 0x075736820, 0x06e6f6574, 0x068657200, - 0x070757368, - 0x0206e6f65, - 0x074686572, + 0x0636f6e66, + 0x06967206e, + 0x06f6e6574, 0x000636f6e, 0x066696720, 0x06e6f6e65, - 0x07400636f, - 0x06e666967, - 0x0206e6f6e, - 0x065740023, - 0x06e6e6f6e, - 0x065742f32, - 0x02f646174, - 0x061006f70, - 0x0656e696e, - 0x06720236e, + 0x07400236e, 0x06e6f6e65, 0x0742f322f, 0x064617461, - 0x000236e6e, + 0x0006f7065, + 0x06e696e67, + 0x020236e6e, 0x06f6e6574, - 0x02f322f63, - 0x0746c006f, - 0x070656e69, - 0x06e672023, - 0x06e6e6f6e, - 0x065742f32, + 0x02f322f64, + 0x061746100, + 0x0236e6e6f, + 0x06e65742f, + 0x0322f6374, + 0x06c006f70, + 0x0656e696e, + 0x06720236e, + 0x06e6f6e65, + 0x0742f322f, + 0x063746c00, + 0x06e6f6e65, + 0x07400236e, + 0x06e6f6e65, + 0x074002368, 0x02f63746c, - 0x00023682f, + 0x0006f7065, + 0x06e696e67, + 0x02023682f, 0x063746c00, - 0x06f70656e, - 0x0696e6720, - 0x023682f63, - 0x0746c0070, + 0x070757368, + 0x020646b6d, + 0x075780070, 0x075736820, 0x0646b6d75, - 0x078007075, - 0x073682064, - 0x06b6d7578, - 0x000636f6e, - 0x066696720, - 0x034203235, - 0x036207265, - 0x073746172, - 0x07420646b, - 0x000636f6e, - 0x066696720, - 0x034203235, - 0x036207265, - 0x073746172, - 0x07420646b, - 0x000236b64, - 0x06b2f352f, - 0x064617461, + 0x07800636f, + 0x06e666967, + 0x020342032, + 0x035362072, + 0x065737461, + 0x072742064, + 0x06b00636f, + 0x06e666967, + 0x020342032, + 0x035362072, + 0x065737461, + 0x072742064, + 0x06b00236b, + 0x0646b2f35, + 0x02f646174, + 0x061006f70, + 0x0656e696e, + 0x06720236b, + 0x0646b2f35, + 0x02f646174, + 0x06100236b, + 0x0646b2f35, + 0x02f63746c, 0x0006f7065, 0x06e696e67, 0x020236b64, 0x06b2f352f, - 0x064617461, - 0x000236b64, - 0x06b2f352f, 0x063746c00, - 0x06f70656e, - 0x0696e6720, - 0x0236b646b, - 0x02f352f63, - 0x0746c0063, - 0x06f6e6e65, - 0x063742025, - 0x07300626f, - 0x06f746669, - 0x06c650073, - 0x065727665, - 0x072006269, - 0x074210064, - 0x06b21006e, - 0x06f6e6574, - 0x021006361, - 0x06e277420, - 0x0636f6e6e, - 0x06563742c, - 0x020726574, - 0x07279696e, - 0x0672e2e2e, - 0x00a006361, - 0x06e277420, 0x0636f6e6e, - 0x06563740a, - 0x0006e6f70, - 0x02e2e2e00, - 0x06e203d20, - 0x025640a00, - 0x077726974, - 0x065206e6f, - 0x070007265, - 0x06164206e, - 0x06f70006e, + 0x065637420, + 0x025730064, + 0x06b00236b, + 0x0646b002f, + 0x064657600, + 0x000006d6f, + 0x0756e7400, + 0x02f646576, + 0x02f6d6970, + 0x0732f6269, + 0x06e2f686f, + 0x074726f64, + 0x0626f6f74, + 0x000686f74, + 0x0726f6462, + 0x06f6f7400, + 0x02f646576, + 0x02f686f62, + 0x06269742f, + 0x0686f7400, + 0x065786563, + 0x06c20686f, + 0x074726f64, + 0x0626f6f74, + 0x000666f72, + 0x06b00736c, + 0x065657020, + 0x033207365, + 0x0636f6e64, + 0x0730a0067, + 0x06f20666f, + 0x072206974, + 0x02e2e2e2e, + 0x00a002348, + 0x02f686f74, + 0x0726f6400, + 0x06e6f702e, + 0x02e2e006e, 0x0203d2025, - 0x0643b2062, - 0x07566203d, + 0x0640a0077, + 0x072697465, + 0x0206e6f70, + 0x000726561, + 0x064206e6f, + 0x070006e20, + 0x03d202564, + 0x03b206275, + 0x066203d20, + 0x0252e3278, 0x020252e32, 0x07820252e, 0x032782025, - 0x02e327820, - 0x0252e3278, - 0x00a00666f, - 0x0726d6174, - 0x0206e6f70, - 0x0006e6f74, - 0x020526e6f, - 0x070007461, - 0x067206e6f, - 0x074204e4f, - 0x054414700, - 0x073657373, - 0x0696f6e2e, - 0x02e2e0077, - 0x072697465, - 0x020736573, - 0x073696f6e, - 0x000726561, - 0x064207365, - 0x07373696f, - 0x06e00666f, - 0x0726d6174, - 0x020736573, - 0x073696f6e, + 0x02e32780a, + 0x000666f72, + 0x06d617420, + 0x06e6f7000, + 0x06e6f7420, + 0x0526e6f70, 0x000746167, 0x0206e6f74, 0x0204e4f54, - 0x041470062, - 0x06f6f743a, - 0x020657272, - 0x06f722025, - 0x0730a006e, - 0x06f742052, + 0x041470073, + 0x065737369, + 0x06f6e2e2e, + 0x02e007772, + 0x069746520, 0x073657373, 0x0696f6e00, - 0x06d6f756e, - 0x0742e2e2e, - 0x0002f002f, - 0x00062696e, - 0x064002f00, - 0x000006d6f, - 0x0756e7400, - 0x02f6d6970, - 0x0732f636f, - 0x06e662f25, - 0x073002573, - 0x02e2e2e00, - 0x0636f6e66, - 0x066696c65, - 0x000726561, - 0x064636f6e, - 0x066002573, - 0x02e2e2e00, - 0x0626f6f74, - 0x066696c65, - 0x000636f75, - 0x06c646e27, - 0x074207265, - 0x06164206b, - 0x065726e65, - 0x06c00626f, + 0x072656164, + 0x020736573, + 0x073696f6e, + 0x000666f72, + 0x06d617420, + 0x073657373, + 0x0696f6e00, + 0x074616720, + 0x06e6f7420, + 0x04e4f5441, + 0x04700626f, 0x06f743a20, - 0x025733a20, - 0x025730a00, - 0x0626f6f74, - 0x03a202573, - 0x03a202573, - 0x00a003f00, - 0x068656c70, - 0x00025730a, - 0x000736565, - 0x06b696e67, - 0x020626f6f, - 0x07466696c, - 0x065007365, - 0x0656b696e, - 0x067202362, - 0x02f6d656d, - 0x000726561, - 0x064696e67, - 0x020626f6f, - 0x07466696c, - 0x065007772, - 0x06974696e, - 0x067202362, - 0x02f6d656d, - 0x00023622f, - 0x06d656d00, - 0x063616e27, - 0x074206f70, - 0x0656e2023, - 0x0622f6d65, - 0x06d002362, - 0x02f6d656d, - 0x00063616e, - 0x02774206f, - 0x070656e20, - 0x023622f6d, - 0x0656d0063, + 0x06572726f, + 0x072202573, + 0x00a006e6f, + 0x074205273, + 0x065737369, + 0x06f6e0073, + 0x065727665, + 0x072006269, + 0x074210068, + 0x06f742100, + 0x0646b2100, + 0x06e6f6e65, + 0x074210063, 0x0616e2774, - 0x020726561, - 0x06420626f, - 0x06f742066, - 0x0696c6500, - 0x00a256400, - 0x063616e27, - 0x074207265, - 0x061642062, - 0x06f6f7420, - 0x066696c65, - 0x0002b2564, - 0x00063616e, - 0x027742072, - 0x065616420, - 0x0626f6f74, - 0x02066696c, - 0x065002b25, - 0x064002362, - 0x02f626f6f, - 0x074006361, + 0x020636f6e, + 0x06e656374, + 0x02c207265, + 0x074727969, + 0x06e672e2e, + 0x02e0a0063, + 0x0616e2774, + 0x020636f6e, + 0x06e656374, + 0x00a00626f, + 0x06f740062, + 0x06f6f7465, + 0x073006d6f, + 0x0756e742e, + 0x02e2e002f, + 0x0002f0062, + 0x0696e6400, + 0x02f000000, + 0x06d6f756e, + 0x074007375, + 0x063636573, + 0x0730a002f, + 0x06e65742f, + 0x02573002f, + 0x06e65742f, + 0x06e657400, + 0x02f6c6962, + 0x02f6e6574, + 0x061646472, + 0x02e257300, + 0x062696e64, + 0x0696e6720, + 0x02573206f, + 0x06e746f20, + 0x02f6c6962, + 0x02f6e6574, + 0x061646472, + 0x02e6e6574, + 0x00a002f6c, + 0x069622f6e, + 0x065746164, + 0x064722e6e, + 0x06574002f, + 0x06d697073, + 0x02f696e69, + 0x07400696e, + 0x06974002d, + 0x06d63002f, + 0x06d697073, + 0x02f696e69, + 0x07400696e, + 0x06974002d, + 0x063002f6d, + 0x06970732f, + 0x0696e6974, + 0x000626f6f, + 0x0743a2025, + 0x0733a2025, + 0x0730a0062, + 0x06f6f743a, + 0x02025733a, + 0x02025730a, + 0x00025735b, + 0x025735d3a, + 0x020006361, 0x06e277420, - 0x06f70656e, - 0x02023622f, - 0x0626f6f74, - 0x00020656e, - 0x07472793a, - 0x020307825, - 0x075780a00, - 0x063616e27, - 0x074207374, - 0x061727420, - 0x06b65726e, - 0x0656c0025, - 0x0735b2573, - 0x05d3a2000, - 0x063616e27, - 0x074207265, - 0x061642023, - 0x0632f636f, - 0x06e733b20, - 0x0706c6561, - 0x073652072, - 0x065626f6f, + 0x072656164, + 0x02023632f, + 0x0636f6e73, + 0x03b20706c, + 0x065617365, + 0x020726562, + 0x06f6f7400, + 0x023732f25, + 0x073006372, + 0x065617465, + 0x000256400, + 0x077726974, + 0x065007469, + 0x06d652e2e, + 0x02e002373, + 0x02f626f6f, + 0x074002f6e, + 0x02f626f6f, 0x074000000, + 0x02f6e2f62, + 0x06f6f7400, + 0x073746174, + 0x000256c64, + 0x0002f6e2f, + 0x0626f6f74, + 0x00023632f, + 0x074696d65, + 0x000000000, 0x000000000, - 0x00005b10, + 0x00005d80, 0x0, - 0x00005b10, + 0x00005d80, 0x0, }; diff --git a/power/devrtc.c b/power/devrtc.c index 73bf385e08d94a6d4c8c7abc2a59d8e321c039eb..da0eb911d3dbd9ccc9a35c844f6a6dc9c281fb2e 100644 --- a/power/devrtc.c +++ b/power/devrtc.c @@ -98,10 +98,10 @@ Chan* rtcopen(Chan *c, int omode) { if(c->qid.path==Qrtc && (omode&(OWRITE|OTRUNC))) - if(strcmp(u->p->pgrp->user, "bootes") != 0) /* BUG */ + if(strcmp(u->p->user, "bootes") != 0) /* BUG */ error(Eperm); if(c->qid.path == Qnvram) - if(strcmp(u->p->pgrp->user, "bootes") != 0) /* BUG */ + if(strcmp(u->p->user, "bootes") != 0) /* BUG */ error(Eperm); return devopen(c, omode, rtcdir, NRTC, devgen); } diff --git a/power/main.c b/power/main.c index b3ae014d76347058541eed3620be629bc25663bb..262438faf6617a74429072a331366cc4a5963841 100644 --- a/power/main.c +++ b/power/main.c @@ -128,8 +128,7 @@ vmereset(void) else noforce = 0; MODEREG->resetforce = (1<<1) | noforce; - for(i=0; i<1000000; i++) - ; + delay(140); MODEREG->resetforce = noforce; } @@ -259,7 +258,7 @@ userinit(void) p->fgrp = newfgrp(); strcpy(p->text, "*init*"); - strcpy(p->pgrp->user, "bootes"); + strcpy(p->user, "bootes"); savefpregs(&initfp); p->fpstate = FPinit; diff --git a/power/trap.c b/power/trap.c index b6b7b4011a722be350621e6547256bc9614a93b8..e32394fe0003957eebfa37b2e54e33055f509519 100644 --- a/power/trap.c +++ b/power/trap.c @@ -301,7 +301,7 @@ intr(Ureg *ur) * if nothing else, what the hell? */ if(!any && bogies++<10){ -/* print("bogus intr lvl 5 pend %lux on %d\n", npend, m->machno);/**/ + print("bogus intr lvl 5 pend %lux on %d\n", npend, m->machno);/**/ delay(100); } /* diff --git a/ss/l.s b/ss/l.s index 04d668ff4a119a3a937385f9fb3ab7a29441cbd3..0c1b9b617c820cee5dd41c329ba36b8edffde3ce 100644 --- a/ss/l.s +++ b/ss/l.s @@ -55,20 +55,18 @@ TEXT startvirt(SB), $-4 TEXT swap1(SB), $0 - MOVW keyaddr+0(FP), R8 - TAS (R8), R7 /* LDSTUB, thank you ken */ + TAS (R7), R7 /* LDSTUB, thank you ken */ RETURN TEXT swap1_should_work(SB), $0 - MOVW keyaddr+0(FP), R8 + MOVW R7, R8 MOVW $1, R7 SWAP (R8), R7 RETURN TEXT swap1x(SB), $0 - MOVW keyaddr+0(FP), R8 MOVW PSR, R9 MOVW R9, R10 AND $~PSRET, R10 /* BUG: book says this is buggy */ @@ -76,7 +74,7 @@ TEXT swap1x(SB), $0 OR R0, R0 OR R0, R0 OR R0, R0 - MOVW (R8), R7 + MOVW (R7), R7 CMP R7, R0 BNE was1 MOVW $1, R10 @@ -111,7 +109,6 @@ TEXT splhi(SB), $0 TEXT splx(SB), $0 MOVW R15, 4(R(MACH)) /* save PC in m->splpc */ - MOVW psr+0(FP), R7 MOVW R7, PSR /* BUG: book says this is buggy */ OR R0, R0 OR R0, R0 @@ -123,13 +120,13 @@ TEXT spldone(SB), $0 RETURN TEXT touser(SB), $-4 - MOVW $(SYSPSR&~PSREF), R7 - MOVW R7, PSR + MOVW $(SYSPSR&~PSREF), R8 + MOVW R8, PSR OR R0, R0 OR R0, R0 OR R0, R0 - MOVW sp+0(FP), R1 + MOVW R7, R1 SAVE R0, R0 /* RETT is implicit RESTORE */ MOVW $(UTZERO+32), R7 /* PC; header appears in text */ MOVW $(UTZERO+32+4), R8 /* nPC */ @@ -137,7 +134,7 @@ TEXT touser(SB), $-4 TEXT rfnote(SB), $0 - MOVW 0(FP), R1 /* 1st arg is &uregpointer */ + MOVW R7, R1 /* 1st arg is &uregpointer */ ADD $4, R1 /* point at ureg */ JMP restore @@ -301,7 +298,6 @@ TEXT syslink(SB), $-4 TEXT puttbr(SB), $0 - MOVW tbr+0(FP), R7 MOVW R7, TBR OR R0, R0 OR R0, R0 @@ -325,7 +321,6 @@ TEXT getwim(SB), $0 TEXT setlabel(SB), $0 - MOVW b+0(FP), R7 MOVW R1, (R7) MOVW R15, 4(R7) MOVW $0, R7 @@ -333,15 +328,14 @@ TEXT setlabel(SB), $0 TEXT gotolabel(SB), $0 - MOVW b+0(FP), R8 - MOVW (R8), R1 - MOVW 4(R8), R15 + MOVW (R7), R1 + MOVW 4(R7), R15 MOVW $1, R7 RETURN TEXT putcxsegm(SB), $0 - MOVW 0(FP), R8 /* context */ + MOVW R7, R8 /* context */ MOVW 4(FP), R9 /* segment addr */ MOVW 8(FP), R10 /* segment value */ MOVW $0xFFE80118, R7 @@ -350,61 +344,52 @@ TEXT putcxsegm(SB), $0 TEXT putcxreg(SB), $0 - MOVW $CONTEXT, R7 - MOVW 0(FP), R8 - MOVB R8, (R7, 2) + MOVW $CONTEXT, R8 + MOVB R7, (R8, 2) RETURN TEXT putb2(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVB R8, (R7, 2) RETURN TEXT getb2(SB), $0 - MOVW 0(FP), R7 MOVB (R7, 2), R7 RETURN TEXT getw2(SB), $0 - MOVW 0(FP), R7 MOVW (R7, 2), R7 RETURN TEXT putw2(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 2) RETURN TEXT putw4(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 4) RETURN TEXT putwC(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 0xC) RETURN TEXT putwD(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 0xD) RETURN TEXT putwD16(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 0xD) ADD $(1<<4), R7 @@ -441,14 +426,12 @@ TEXT putwD16(SB), $0 TEXT putwE(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 0xE) RETURN TEXT putwE16(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 0xE) ADD $(1<<4), R7 @@ -485,14 +468,12 @@ TEXT putwE16(SB), $0 TEXT putsegm(SB), $0 - MOVW 0(FP), R7 MOVW 4(FP), R8 MOVW R8, (R7, 3) RETURN TEXT savefpregs(SB), $0 - MOVW 0(FP), R7 MOVW FSR, 0(R7) ADD $(4+7), R7 /* double-align so can MOVD */ @@ -526,7 +507,6 @@ TEXT restfpregs(SB), $0 OR $PSREF, R8 MOVW R8, PSR - MOVW 0(FP), R7 MOVW (R7), FSR ADD $(4+7), R7 /* double-align so can MOVD */ @@ -554,6 +534,7 @@ TEXT restfpregs(SB), $0 RETURN TEXT clearfpintr(SB), $0 + MOVW $fpq+BY2WD(SB), R7 ANDN $0x7, R7 /* must be D aligned */ MOVW $fsr+0(SB), R9 diff --git a/ss/main.c b/ss/main.c index dbcffb358f0969fc3efe3789eac593eaac01ae91..f9fd7a9571a8a71798e751f13a672fc9d6e7cca8 100644 --- a/ss/main.c +++ b/ss/main.c @@ -135,7 +135,7 @@ userinit(void) p->fgrp = newfgrp(); strcpy(p->text, "*init*"); - strcpy(p->pgrp->user, "bootes"); + strcpy(p->user, "bootes"); savefpregs(&initfp); p->fpstate = FPinit; diff --git a/ss/trap.c b/ss/trap.c index 1dbbb5b684b9839d3574a74edf0b2c14c3b10338..f3126e27ca3ae958ebe862ea3177b3cde72b00f7 100644 --- a/ss/trap.c +++ b/ss/trap.c @@ -250,7 +250,8 @@ notify(Ureg *ur) memmove((char*)sp, u->note[0].msg, ERRLEN); sp -= 3*BY2WD; *(ulong*)(sp+2*BY2WD) = sp+3*BY2WD; /* arg 2 is string */ - *(ulong*)(sp+1*BY2WD) = (ulong)u->ureg; /* arg 1 is ureg* */ + *(ulong*)(sp+1*BY2WD) = (ulong)u->ureg; /* arg 1 is ureg* (compat) */ + ur->r7 = (ulong)u->ureg; /* arg 1 is ureg* */ *(ulong*)(sp+0*BY2WD) = 0; /* arg 0 is pc */ ur->usp = sp; ur->pc = (ulong)u->notify; @@ -359,10 +360,6 @@ syscall(Ureg *aur) msg = "sys: odd stack"; goto Bad; } - if(((ulong*)ur->pc)[-2] == 0x82206004){ /* new calling convention: look for ADD $-4, SP */ - pprint("old system call linkage\n"); - sp += BY2WD; - } if(sp<(USTKTOP-BY2PG) || sp>(USTKTOP-(1+MAXSYSARG)*BY2WD)) validaddr(sp, ((1+MAXSYSARG)*BY2WD), 0); u->p->psstate = sysctab[r7];