This commit is contained in:
cinap_lenrek 2020-02-02 20:33:40 +01:00
commit 04c4a9ca8b
6 changed files with 62 additions and 11 deletions

View file

@ -16,9 +16,23 @@ is an emulator for the Atari 2600.
It exectues the romfile given as an argument,
and controls as if using a regular 4-direction 1-button joystick,
using \fBspace\fR button and directional keys.
The \fBq\fR, \fBw\fR, \fBe\fR, \fBr\fR keys correspond respectively to the reset, select, player 1 difficulty and color mode switches.
The \fBq\fR, \fBw\fR, \fBe\fR and \fBr\fR keys correspond respectively to the reset, select, player 1 difficulty and color mode switches.
Other keys:
.TP
F1
Pause the emulator. If already paused it will step one video frame.
.TP
F12
Toggle the emulator's speedometer. It shows in the upper left,
off-viewport corner, the ratio between the expected and observed time it
took to draw 60 frames.
.TP
t
Toggle tracing of the emulator.
.TP
`
It uncaps the 60fps frame rate and lets emulation go as fast as possible.
.TP
Esc
Pause the emulator.
.TP

View file

@ -4,7 +4,7 @@ gb, gba, nes, snes \- emulators
.SH SYNOPSIS
.B games/gb
[
.B -acdT
.B -acd
]
[
.B -C
@ -17,7 +17,7 @@ gb, gba, nes, snes \- emulators
.br
.B games/gba
[
.B -aT
.B -a
] [
.B -b
.I biosfile
@ -41,7 +41,7 @@ gb, gba, nes, snes \- emulators
.br
.B games/snes
[
.B -ahmsT
.B -ahms
] [
.B -x
.I scale
@ -55,15 +55,29 @@ and
.I snes
are emulators for the Nintendo Game Boy and Game Boy Color (GB and GBC), Nintendo Game Boy Advance (GBA), Nintendo Entertainment System (NES), and Super Nintendo Entertainment System (SNES).
They execute the romfile given as an argument.
The \fBz\fR, \fBx\fR, \fBa\fR, \fBs\fR, \fBq\fR, \fBw\fRreturn and shift keys correspond to B, A, Y, X, L1, L2, Start and Select, respectively.
The \fBz\fR, \fBx\fR, \fBa\fR, \fBs\fR, \fBq\fR, \fBw, \fRreturn and shift keys correspond to B, A, Y, X, L1, L2, Start and Select, respectively.
Other keys:
.TP
F1
Pause the emulator. If already paused it will step one video frame.
.TP
F5
Save the current state in \fBgb.save\fR / \fBgba.save\fR / \fBnes.save\fR / \fBsnes.save\fR.
.TP
F6
Load the current state from \fBgb.save\fR / \fBgba.save\fR / \fBnes.save\fR / \fBsnes.save\fR.
.TP
F12
Toggle the emulator's speedometer. It shows in the upper left,
off-viewport corner, the ratio between the expected and observed time it
took to draw 60 frames.
.TP
t
Toggle tracing of the emulator.
.TP
`
It uncaps the 60fps frame rate and lets emulation go as fast as possible.
.TP
Esc
Pause the emulator.
.TP

View file

@ -17,6 +17,20 @@ It executes the romfile given as an argument.
The \fBz\fR, \fBx\fR, \fBa\fR, return and shift keys correspond to A, B, C, Start and Select, respectively.
Other keys:
.TP
F1
Pause the emulator. If already paused it will step one video frame.
.TP
F12
Toggle the emulator's speedometer. It shows in the upper left,
off-viewport corner, the ratio between the expected and observed time it
took to draw 60 frames.
.TP
t
Toggle tracing of the emulator.
.TP
`
It uncaps the 60fps frame rate and lets emulation go as fast as possible.
.TP
Esc
Pause the emulator.
.TP

View file

@ -10,7 +10,7 @@ walk \- walk a path
.I mind,maxd
] [
.B -e
.I ststr
.I statfmt
] [
.I name ...
]
@ -18,7 +18,7 @@ walk \- walk a path
.I Walk
recursively descends any directory arguments,
printing the name of each file on a separate line.
When no arguments are given, the current directory
When no arguments are given, the working directory
is assumed.
Non-directory arguments are checked for existence,
then printed, if so.
@ -50,7 +50,7 @@ are optional.
.TP
.B -e statfmt
Setting the statfmt string allows specifying the data
.B walk
.I walk
should print.
It takes a string of characters, each corresponding
to some piece of information about the file being
@ -89,6 +89,12 @@ size in bytes
.TP
.B x
permissions
.TP
.B D
server device
.TP
.B T
server type (kernel device rune)
.PD
.PP
The default statfmt is simply,

View file

@ -316,7 +316,6 @@ acmeerrorproc(void *)
buf[n] = '\0';
s = estrdup(buf);
sendp(cerr, s);
free(s);
}
free(buf);
}

View file

@ -71,6 +71,10 @@ dofile(char *path, Dir *f, int pathonly)
case 'q': Bprint(bout, "%ullx.%uld.%.2uhhx", f->qid.path, f->qid.vers, f->qid.type); break;
case 's': Bprint(bout, "%lld", f->length); break;
case 'x': Bprint(bout, "%ulo", f->mode); break;
/* These two are slightly different, as they tell us about the fileserver instead of the file */
case 'D': Bprint(bout, "%ud", f->dev); break;
case 'T': Bprint(bout, "%C", f->type); break;
default:
abort();
}
@ -238,9 +242,9 @@ main(int argc, char **argv)
if((stfmt = s_reset(stfmt)) == nil)
sysfatal("s_reset: %r");
s_append(stfmt, EARGF(usage()));
i = strspn(s_to_c(stfmt), "UGMamnpqsx");
i = strspn(s_to_c(stfmt), "UGMamnpqsxDT");
if(i != s_len(stfmt))
sysfatal("bad stfmt: %s\n", s_to_c(stfmt));
sysfatal("bad stfmt: %s", s_to_c(stfmt));
break;
default:
usage();