clean up openprog and move progsiz

This commit is contained in:
Yuvia 2025-09-08 21:27:06 +00:00
parent 90cfd134ee
commit 6bbf33e8a9

13
scemu.c
View file

@ -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;