clean up openprog and move progsiz
This commit is contained in:
parent
90cfd134ee
commit
6bbf33e8a9
1 changed files with 7 additions and 6 deletions
13
scemu.c
13
scemu.c
|
@ -29,11 +29,12 @@ usage(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
openprog(char *f, vlong *progsiz)
|
openprog(char *f)
|
||||||
{
|
{
|
||||||
int fd;
|
int fd;
|
||||||
long n;
|
long n;
|
||||||
Dir *d;
|
Dir *d;
|
||||||
|
vlong progsiz;
|
||||||
|
|
||||||
memset(prog, 0, sizeof prog);
|
memset(prog, 0, sizeof prog);
|
||||||
if(f == nil)
|
if(f == nil)
|
||||||
|
@ -44,11 +45,11 @@ openprog(char *f, vlong *progsiz)
|
||||||
d = dirfstat(fd);
|
d = dirfstat(fd);
|
||||||
if(d->length > 32768)
|
if(d->length > 32768)
|
||||||
sysfatal("bad program: bigger than 32K and no banking support");
|
sysfatal("bad program: bigger than 32K and no banking support");
|
||||||
*progsiz = d->length;
|
progsiz = d->length;
|
||||||
free(d);
|
free(d);
|
||||||
n = read(fd, prog+32768-*progsiz, *progsiz);
|
n = read(fd, prog+32768-progsiz, progsiz);
|
||||||
if(n != *progsiz)
|
if(n != progsiz)
|
||||||
fprint(2, "tried to read %lld bytes, got only %ld bytes\n", *progsiz, n);
|
fprint(2, "tried to read %lld bytes, got only %ld bytes\n", progsiz, n);
|
||||||
close(fd);
|
close(fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,7 +57,7 @@ void
|
||||||
main(int argc, char **argv)
|
main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
int c;
|
int c;
|
||||||
vlong t, t2, t3, progsiz;
|
vlong t, t2, t3;
|
||||||
vlong target;
|
vlong target;
|
||||||
|
|
||||||
target = 1000;
|
target = 1000;
|
||||||
|
|
Loading…
Add table
Reference in a new issue