Document the memory watch expression syntax
This commit is contained in:
parent
258ddfd7f6
commit
bbce94df1a
2 changed files with 366 additions and 89 deletions
183
manual.lyx
183
manual.lyx
|
@ -3083,6 +3083,189 @@ Sent when key that has keyhook events requested changes state.
|
||||||
table values in input.raw).
|
table values in input.raw).
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Section
|
||||||
|
Memory watch expression syntax
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Standard
|
||||||
|
Memory watch expressions are in RPN (Reverse Polish Notation).
|
||||||
|
At the end of expression, the top entry on stack is taken as the final
|
||||||
|
result.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Standard
|
||||||
|
Notations:
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
Evaluation order is strictly left to right.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
a is the entry on top of stack
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
b is the entry immediately below top of stack
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
; separates values to be pushed (no intermediate pop).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
After end of element, all used stack slots are popped and all results are
|
||||||
|
pushed.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
When pushing multiple values, the pushes occur in order shown.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Standard
|
||||||
|
The following operators are available:
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
+ : a + b
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
- : a - b
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
* : a * b
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
/ : a / b
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
% : a % b
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
a : atan(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
b : read_signed_byte(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
c : cos(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
d : read_signed_dword(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
i : quotent(a / b)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
p :
|
||||||
|
\begin_inset Formula $\pi$
|
||||||
|
\end_inset
|
||||||
|
|
||||||
|
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
q : read_signed_qword(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
r : sqrt(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
s : sin(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
t : tan(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
u : a; a
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
w : read_signed_word(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
A : atan2(a, b)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
B : read_unsigned_byte(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
C<number>z : Push number <number> to stack.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
D : read_unsigned_dword(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
C0x<number>z : Push number <number> (hexadecimal) to stack.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
Q : read_unsigned_qword(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
R<digit> : round a to <digit> digits.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Itemize
|
||||||
|
W : read_unsigned_word(a)
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Subsection
|
||||||
|
Example:
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Standard
|
||||||
|
C0x007e0878zWC0x007e002czW-
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Push value 0x7e0878 on top of stack (C0x007e0878z).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Pop the value on top of stack (0x7e0878), read word value at that address
|
||||||
|
and push the result,call it x1 (W).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Push value 0x7e002c on top of stack (C0x007e002cz).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Pop the value on top of stack (0x7e002c), read word value at that address
|
||||||
|
and push the result,call it x2 (W).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Pop the two top numbers on stack, x1 and x2, substract x1 from x2 and push
|
||||||
|
x2 - x1 (-).
|
||||||
|
\end_layout
|
||||||
|
|
||||||
|
\begin_layout Enumerate
|
||||||
|
Since the expression ends, the final memory watch result is the top one
|
||||||
|
on stack, which is x2 - x1.
|
||||||
|
\end_layout
|
||||||
|
|
||||||
\begin_layout Section
|
\begin_layout Section
|
||||||
Modifier and key names:
|
Modifier and key names:
|
||||||
\end_layout
|
\end_layout
|
||||||
|
|
272
manual.txt
272
manual.txt
|
@ -1553,11 +1553,105 @@ Sent when key that has keyhook events requested changes state.
|
||||||
Keyname is name of the key (group) and state is the state (same
|
Keyname is name of the key (group) and state is the state (same
|
||||||
kind as table values in input.raw).
|
kind as table values in input.raw).
|
||||||
|
|
||||||
9 Modifier and key names:
|
9 Memory watch expression syntax
|
||||||
|
|
||||||
9.1 SDL Platform
|
Memory watch expressions are in RPN (Reverse Polish Notation). At
|
||||||
|
the end of expression, the top entry on stack is taken as the
|
||||||
|
final result.
|
||||||
|
|
||||||
9.1.1 Modifier names
|
Notations:
|
||||||
|
|
||||||
|
• Evaluation order is strictly left to right.
|
||||||
|
|
||||||
|
• a is the entry on top of stack
|
||||||
|
|
||||||
|
• b is the entry immediately below top of stack
|
||||||
|
|
||||||
|
• ; separates values to be pushed (no intermediate pop).
|
||||||
|
|
||||||
|
• After end of element, all used stack slots are popped and all
|
||||||
|
results are pushed.
|
||||||
|
|
||||||
|
• When pushing multiple values, the pushes occur in order shown.
|
||||||
|
|
||||||
|
The following operators are available:
|
||||||
|
|
||||||
|
• + : a + b
|
||||||
|
|
||||||
|
• - : a - b
|
||||||
|
|
||||||
|
• * : a * b
|
||||||
|
|
||||||
|
• / : a / b
|
||||||
|
|
||||||
|
• % : a % b
|
||||||
|
|
||||||
|
• a : atan(a)
|
||||||
|
|
||||||
|
• b : read_signed_byte(a)
|
||||||
|
|
||||||
|
• c : cos(a)
|
||||||
|
|
||||||
|
• d : read_signed_dword(a)
|
||||||
|
|
||||||
|
• i : quotent(a / b)
|
||||||
|
|
||||||
|
• p :\pi
|
||||||
|
|
||||||
|
|
||||||
|
• q : read_signed_qword(a)
|
||||||
|
|
||||||
|
• r : sqrt(a)
|
||||||
|
|
||||||
|
• s : sin(a)
|
||||||
|
|
||||||
|
• t : tan(a)
|
||||||
|
|
||||||
|
• u : a; a
|
||||||
|
|
||||||
|
• w : read_signed_word(a)
|
||||||
|
|
||||||
|
• A : atan2(a, b)
|
||||||
|
|
||||||
|
• B : read_unsigned_byte(a)
|
||||||
|
|
||||||
|
• C<number>z : Push number <number> to stack.
|
||||||
|
|
||||||
|
• D : read_unsigned_dword(a)
|
||||||
|
|
||||||
|
• C0x<number>z : Push number <number> (hexadecimal) to stack.
|
||||||
|
|
||||||
|
• Q : read_unsigned_qword(a)
|
||||||
|
|
||||||
|
• R<digit> : round a to <digit> digits.
|
||||||
|
|
||||||
|
• W : read_unsigned_word(a)
|
||||||
|
|
||||||
|
9.1 Example:
|
||||||
|
|
||||||
|
C0x007e0878zWC0x007e002czW-
|
||||||
|
|
||||||
|
1. Push value 0x7e0878 on top of stack (C0x007e0878z).
|
||||||
|
|
||||||
|
2. Pop the value on top of stack (0x7e0878), read word value at
|
||||||
|
that address and push the result,call it x1 (W).
|
||||||
|
|
||||||
|
3. Push value 0x7e002c on top of stack (C0x007e002cz).
|
||||||
|
|
||||||
|
4. Pop the value on top of stack (0x7e002c), read word value at
|
||||||
|
that address and push the result,call it x2 (W).
|
||||||
|
|
||||||
|
5. Pop the two top numbers on stack, x1 and x2, substract x1 from
|
||||||
|
x2 and push x2 - x1 (-).
|
||||||
|
|
||||||
|
6. Since the expression ends, the final memory watch result is
|
||||||
|
the top one on stack, which is x2 - x1.
|
||||||
|
|
||||||
|
10 Modifier and key names:
|
||||||
|
|
||||||
|
10.1 SDL Platform
|
||||||
|
|
||||||
|
10.1.1 Modifier names
|
||||||
|
|
||||||
Following modifier names are known:
|
Following modifier names are known:
|
||||||
|
|
||||||
|
@ -1573,7 +1667,7 @@ Following modifier names are known:
|
||||||
|
|
||||||
• mode: Mode select.
|
• mode: Mode select.
|
||||||
|
|
||||||
9.1.2 Key names
|
10.1.2 Key names
|
||||||
|
|
||||||
Following key names are known:
|
Following key names are known:
|
||||||
|
|
||||||
|
@ -1612,7 +1706,7 @@ Following key names are known:
|
||||||
key having hardware-dependent scan code of <n> (useful to bind
|
key having hardware-dependent scan code of <n> (useful to bind
|
||||||
those keys that don't have symbolic names).
|
those keys that don't have symbolic names).
|
||||||
|
|
||||||
9.1.3 Joystick pseudo-keys:
|
10.1.3 Joystick pseudo-keys:
|
||||||
|
|
||||||
• joystick<num>button<button>: Joystick <num> (0-based) button
|
• joystick<num>button<button>: Joystick <num> (0-based) button
|
||||||
<button> (0-based).
|
<button> (0-based).
|
||||||
|
@ -1638,7 +1732,7 @@ Following key names are known:
|
||||||
• joystick<num>axis<axis>: Joystick <num> (0-based) axis <axis>
|
• joystick<num>axis<axis>: Joystick <num> (0-based) axis <axis>
|
||||||
pressure (axis modes pressure_*).
|
pressure (axis modes pressure_*).
|
||||||
|
|
||||||
9.1.4 Special buttons:
|
10.1.4 Special buttons:
|
||||||
|
|
||||||
• Escape: Enter/Exit Command mode, cancel modal dialogs.
|
• Escape: Enter/Exit Command mode, cancel modal dialogs.
|
||||||
|
|
||||||
|
@ -1671,9 +1765,9 @@ Following key names are known:
|
||||||
• LCTRL+LALT+ESCAPE: Ungraceful shutdown (leaves dump
|
• LCTRL+LALT+ESCAPE: Ungraceful shutdown (leaves dump
|
||||||
corrupted!).
|
corrupted!).
|
||||||
|
|
||||||
9.2 wxWidgets platform
|
10.2 wxWidgets platform
|
||||||
|
|
||||||
9.2.1 Modifier names:
|
10.2.1 Modifier names:
|
||||||
|
|
||||||
Following modifier names are known:
|
Following modifier names are known:
|
||||||
|
|
||||||
|
@ -1687,7 +1781,7 @@ Following modifier names are known:
|
||||||
|
|
||||||
• cmd (Mac OS X only)
|
• cmd (Mac OS X only)
|
||||||
|
|
||||||
9.2.2 Key names:
|
10.2.2 Key names:
|
||||||
|
|
||||||
Following key names are known:
|
Following key names are known:
|
||||||
|
|
||||||
|
@ -1719,14 +1813,14 @@ Following key names are known:
|
||||||
special14, special15, special16, special17, special18,
|
special14, special15, special16, special17, special18,
|
||||||
special19, special20
|
special19, special20
|
||||||
|
|
||||||
10 Movie file format
|
11 Movie file format
|
||||||
|
|
||||||
Movie file is .zip archive in itself, normal ZIP archive tools
|
Movie file is .zip archive in itself, normal ZIP archive tools
|
||||||
work on it (note: If you recompress it, do not use compression
|
work on it (note: If you recompress it, do not use compression
|
||||||
methods other than store and deflate and especially do not use
|
methods other than store and deflate and especially do not use
|
||||||
encryption of any kind).
|
encryption of any kind).
|
||||||
|
|
||||||
10.1 Detecting clean start/SRAM/Savestate
|
11.1 Detecting clean start/SRAM/Savestate
|
||||||
|
|
||||||
• If file has member “savestate” it is savestate, otherwise:
|
• If file has member “savestate” it is savestate, otherwise:
|
||||||
|
|
||||||
|
@ -1735,7 +1829,7 @@ encryption of any kind).
|
||||||
|
|
||||||
• It is movie starting from clear state.
|
• It is movie starting from clear state.
|
||||||
|
|
||||||
10.2 Member: gametype
|
11.2 Member: gametype
|
||||||
|
|
||||||
Type of game ROM and region (as one line). Valid values are:
|
Type of game ROM and region (as one line). Valid values are:
|
||||||
|
|
||||||
|
@ -1773,92 +1867,92 @@ Frame rates are:
|
||||||
+---------+-----------------+
|
+---------+-----------------+
|
||||||
|
|
||||||
|
|
||||||
10.3 Member: port1
|
11.3 Member: port1
|
||||||
|
|
||||||
Contains type of port #1 (as one line). Valid values are 'none',
|
Contains type of port #1 (as one line). Valid values are 'none',
|
||||||
'gamepad', 'multitap' and 'mouse'. If not present, defaults to
|
'gamepad', 'multitap' and 'mouse'. If not present, defaults to
|
||||||
'gamepad'.
|
'gamepad'.
|
||||||
|
|
||||||
10.4 Member: port2
|
11.4 Member: port2
|
||||||
|
|
||||||
Contains type of port #2 (as one line). Valid values are 'none',
|
Contains type of port #2 (as one line). Valid values are 'none',
|
||||||
'gamepad', 'multitap', 'mouse', 'superscope', 'justifier' and
|
'gamepad', 'multitap', 'mouse', 'superscope', 'justifier' and
|
||||||
'justifiers'. If not present, defaults to 'none'.
|
'justifiers'. If not present, defaults to 'none'.
|
||||||
|
|
||||||
10.5 Member: gamename
|
11.5 Member: gamename
|
||||||
|
|
||||||
Contains name of the game (as one line).
|
Contains name of the game (as one line).
|
||||||
|
|
||||||
10.6 Member: authors
|
11.6 Member: authors
|
||||||
|
|
||||||
Contains authors, one per line. Part before '|' is the full name,
|
Contains authors, one per line. Part before '|' is the full name,
|
||||||
part after is the nickname.
|
part after is the nickname.
|
||||||
|
|
||||||
10.7 Member: systemid
|
11.7 Member: systemid
|
||||||
|
|
||||||
Always “lsnes-rr1” (one line). Used to reject other saves.
|
Always “lsnes-rr1” (one line). Used to reject other saves.
|
||||||
|
|
||||||
10.8 Member: controlsversion
|
11.8 Member: controlsversion
|
||||||
|
|
||||||
Always “0” (one line). Used to identify what controls are there.
|
Always “0” (one line). Used to identify what controls are there.
|
||||||
|
|
||||||
10.9 Member: “coreversion”
|
11.9 Member: “coreversion”
|
||||||
|
|
||||||
Contains bsnes core version number (as one line).
|
Contains bsnes core version number (as one line).
|
||||||
|
|
||||||
10.10 Member: projectid
|
11.10 Member: projectid
|
||||||
|
|
||||||
Contains project ID (as one line). Used to identify if two movies
|
Contains project ID (as one line). Used to identify if two movies
|
||||||
are part of the same project.
|
are part of the same project.
|
||||||
|
|
||||||
10.11 Member: {rom,slota,slotb}{,xml}.sha256
|
11.11 Member: {rom,slota,slotb}{,xml}.sha256
|
||||||
|
|
||||||
Contains SHA-256 of said ROM or ROM mapping file (as one line).
|
Contains SHA-256 of said ROM or ROM mapping file (as one line).
|
||||||
Absent if corresponding file is absent.
|
Absent if corresponding file is absent.
|
||||||
|
|
||||||
10.12 Member: moviesram.<name>
|
11.12 Member: moviesram.<name>
|
||||||
|
|
||||||
Raw binary startup SRAM of kind <name>. Only present in
|
Raw binary startup SRAM of kind <name>. Only present in
|
||||||
savestates and movies starting from SRAM.
|
savestates and movies starting from SRAM.
|
||||||
|
|
||||||
10.13 Member: saveframe
|
11.13 Member: saveframe
|
||||||
|
|
||||||
Contains frame number (as one line) of frame movie was saved on.
|
Contains frame number (as one line) of frame movie was saved on.
|
||||||
Only present in savestates.
|
Only present in savestates.
|
||||||
|
|
||||||
10.14 Member: lagcounter
|
11.14 Member: lagcounter
|
||||||
|
|
||||||
Current value of lag counter (as one line). Only present in
|
Current value of lag counter (as one line). Only present in
|
||||||
savestates.
|
savestates.
|
||||||
|
|
||||||
10.15 Member: pollcounters
|
11.15 Member: pollcounters
|
||||||
|
|
||||||
Contains poll counters (currently 100 of them), one per line.
|
Contains poll counters (currently 100 of them), one per line.
|
||||||
Each line is raw poll count if DRDY is set for it. Otherwise it
|
Each line is raw poll count if DRDY is set for it. Otherwise it
|
||||||
is negative poll count minus one. Only present in savestates.
|
is negative poll count minus one. Only present in savestates.
|
||||||
|
|
||||||
10.16 Member: hostmemory
|
11.16 Member: hostmemory
|
||||||
|
|
||||||
Raw binary dump of host memory. Only present in savestates.
|
Raw binary dump of host memory. Only present in savestates.
|
||||||
|
|
||||||
10.17 Member: savestate
|
11.17 Member: savestate
|
||||||
|
|
||||||
The raw binary savestate itself. Savestate detection uses this
|
The raw binary savestate itself. Savestate detection uses this
|
||||||
file, only present in savestates.
|
file, only present in savestates.
|
||||||
|
|
||||||
10.18 Member: screenshot
|
11.18 Member: screenshot
|
||||||
|
|
||||||
Screenshot of current frame. Only present in savestates. First 2
|
Screenshot of current frame. Only present in savestates. First 2
|
||||||
bytes are big-endian width of image, rest are 24-bit RGB image
|
bytes are big-endian width of image, rest are 24-bit RGB image
|
||||||
data. Height of image is inferred from the width and size of
|
data. Height of image is inferred from the width and size of
|
||||||
data.
|
data.
|
||||||
|
|
||||||
10.19 Member: sram.<name>
|
11.19 Member: sram.<name>
|
||||||
|
|
||||||
Raw binary SRAM of kind <name> at time of savestate. Only present
|
Raw binary SRAM of kind <name> at time of savestate. Only present
|
||||||
in savestates.
|
in savestates.
|
||||||
|
|
||||||
10.20 Member: input
|
11.20 Member: input
|
||||||
|
|
||||||
The actual input track, one line per subframe (blank lines are
|
The actual input track, one line per subframe (blank lines are
|
||||||
skipped).
|
skipped).
|
||||||
|
@ -1872,12 +1966,12 @@ skipped).
|
||||||
Length of movie in frames is number of lines in input file that
|
Length of movie in frames is number of lines in input file that
|
||||||
start a new frame.
|
start a new frame.
|
||||||
|
|
||||||
10.21 Member: rerecords
|
11.21 Member: rerecords
|
||||||
|
|
||||||
Contains textual base-10 rerecord count (as one line; emulator
|
Contains textual base-10 rerecord count (as one line; emulator
|
||||||
just writes this, it doesn't read it) + 1.
|
just writes this, it doesn't read it) + 1.
|
||||||
|
|
||||||
10.22 Member: rrdata
|
11.22 Member: rrdata
|
||||||
|
|
||||||
This member stores set of load IDs. There is one load ID per
|
This member stores set of load IDs. There is one load ID per
|
||||||
rerecord (plus one corresponding to start of project).
|
rerecord (plus one corresponding to start of project).
|
||||||
|
@ -1921,27 +2015,27 @@ Records are processed as follows:
|
||||||
The number of rerecords + 1 is equal to the sum of number of IDs
|
The number of rerecords + 1 is equal to the sum of number of IDs
|
||||||
encoded by all records.
|
encoded by all records.
|
||||||
|
|
||||||
10.23 Member: starttime.second
|
11.23 Member: starttime.second
|
||||||
|
|
||||||
Movie starting time, second part. Epoch is Unix epoch. Default is
|
Movie starting time, second part. Epoch is Unix epoch. Default is
|
||||||
1,000,000,000.
|
1,000,000,000.
|
||||||
|
|
||||||
10.24 Member: starttime.subsecond
|
11.24 Member: starttime.subsecond
|
||||||
|
|
||||||
Movie starting time, subsecond part. Unit is CPU clocks. Default
|
Movie starting time, subsecond part. Unit is CPU clocks. Default
|
||||||
is 0.
|
is 0.
|
||||||
|
|
||||||
10.25 Member: savetime.second
|
11.25 Member: savetime.second
|
||||||
|
|
||||||
Movie saving time, second part. Default is starttime.second. Only
|
Movie saving time, second part. Default is starttime.second. Only
|
||||||
present in savestates.
|
present in savestates.
|
||||||
|
|
||||||
10.26 Member: savetime.subsecond
|
11.26 Member: savetime.subsecond
|
||||||
|
|
||||||
Movie saving time, subsecond part. Default is
|
Movie saving time, subsecond part. Default is
|
||||||
starttime.subsecond. Only present in savestates.
|
starttime.subsecond. Only present in savestates.
|
||||||
|
|
||||||
11 Quick'n'dirty encode guide
|
12 Quick'n'dirty encode guide
|
||||||
|
|
||||||
1. Start the emulator and load the movie file.
|
1. Start the emulator and load the movie file.
|
||||||
|
|
||||||
|
@ -1966,9 +2060,9 @@ starttime.subsecond. Only present in savestates.
|
||||||
9. Do 'mkvmerge -o final.mkv tmpdump_video.mkv tmpdump.ogg'. Now
|
9. Do 'mkvmerge -o final.mkv tmpdump_video.mkv tmpdump.ogg'. Now
|
||||||
final.mkv contains quick'n'dirty encode.
|
final.mkv contains quick'n'dirty encode.
|
||||||
|
|
||||||
12 Axis configurations for some gamepad types:
|
13 Axis configurations for some gamepad types:
|
||||||
|
|
||||||
12.1 XBox360 controller:
|
13.1 XBox360 controller:
|
||||||
|
|
||||||
Axes 2 and 5 (joystick<n>axis2 and joystick<n>axis5) should be
|
Axes 2 and 5 (joystick<n>axis2 and joystick<n>axis5) should be
|
||||||
set to pressure-+.
|
set to pressure-+.
|
||||||
|
@ -1979,7 +2073,7 @@ set-axis joystick0axis5 pressure-+
|
||||||
|
|
||||||
• This is needed for SDL only. EVDEV sets those types correctly.
|
• This is needed for SDL only. EVDEV sets those types correctly.
|
||||||
|
|
||||||
12.2 PS3 “sixaxis” controller:
|
13.2 PS3 “sixaxis” controller:
|
||||||
|
|
||||||
Axes 8-19 should be disabled.
|
Axes 8-19 should be disabled.
|
||||||
|
|
||||||
|
@ -2007,9 +2101,9 @@ set-axis joystick0axis18 disabled
|
||||||
|
|
||||||
set-axis joystick0axis19 disabled
|
set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
13 Errata:
|
14 Errata:
|
||||||
|
|
||||||
13.1 Problems from BSNES core:
|
14.1 Problems from BSNES core:
|
||||||
|
|
||||||
• The whole pending save stuff.
|
• The whole pending save stuff.
|
||||||
|
|
||||||
|
@ -2019,7 +2113,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Firmwares can't be loaded from ZIP archives.
|
• Firmwares can't be loaded from ZIP archives.
|
||||||
|
|
||||||
13.2 Other problems:
|
14.2 Other problems:
|
||||||
|
|
||||||
• Modifiers don't work with pseudo-keys (SDL, EVDEV).
|
• Modifiers don't work with pseudo-keys (SDL, EVDEV).
|
||||||
|
|
||||||
|
@ -2039,15 +2133,15 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Wxwidgets UI is still pretty buggy.
|
• Wxwidgets UI is still pretty buggy.
|
||||||
|
|
||||||
14 Changelog:
|
15 Changelog:
|
||||||
|
|
||||||
14.1 rr0-beta1
|
15.1 rr0-beta1
|
||||||
|
|
||||||
• Fix -Wall warnings
|
• Fix -Wall warnings
|
||||||
|
|
||||||
• Fix dumper video corruption with levels 10-18.
|
• Fix dumper video corruption with levels 10-18.
|
||||||
|
|
||||||
14.2 rr0-beta2
|
15.2 rr0-beta2
|
||||||
|
|
||||||
• Autofire
|
• Autofire
|
||||||
|
|
||||||
|
@ -2063,23 +2157,23 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Faster movie loading and saving.
|
• Faster movie loading and saving.
|
||||||
|
|
||||||
14.3 rr0-beta3
|
15.3 rr0-beta3
|
||||||
|
|
||||||
• Joystick support
|
• Joystick support
|
||||||
|
|
||||||
14.4 rr0-beta4
|
15.4 rr0-beta4
|
||||||
|
|
||||||
• Fix multi-buttons
|
• Fix multi-buttons
|
||||||
|
|
||||||
• Save jukebox functionality.
|
• Save jukebox functionality.
|
||||||
|
|
||||||
14.5 rr0-beta5
|
15.5 rr0-beta5
|
||||||
|
|
||||||
• Try to fix some nasty failing movie load edge cases
|
• Try to fix some nasty failing movie load edge cases
|
||||||
|
|
||||||
• Allow specifying scripts to run on command line.
|
• Allow specifying scripts to run on command line.
|
||||||
|
|
||||||
14.6 rr0-beta6
|
15.6 rr0-beta6
|
||||||
|
|
||||||
• Major source code reorganization.
|
• Major source code reorganization.
|
||||||
|
|
||||||
|
@ -2087,7 +2181,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Don't crash if loading initial state fails.
|
• Don't crash if loading initial state fails.
|
||||||
|
|
||||||
14.7 rr0-beta7
|
15.7 rr0-beta7
|
||||||
|
|
||||||
• Fix firmware lookup
|
• Fix firmware lookup
|
||||||
|
|
||||||
|
@ -2101,7 +2195,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Fix loading movies starting from SRAM.
|
• Fix loading movies starting from SRAM.
|
||||||
|
|
||||||
14.8 rr0-beta8
|
15.8 rr0-beta8
|
||||||
|
|
||||||
• Add support for unattended dumping
|
• Add support for unattended dumping
|
||||||
|
|
||||||
|
@ -2114,7 +2208,7 @@ set-axis joystick0axis19 disabled
|
||||||
• Don't try to do dubious things in global ctors (fix crash on
|
• Don't try to do dubious things in global ctors (fix crash on
|
||||||
startup)
|
startup)
|
||||||
|
|
||||||
14.9 rr0-beta9
|
15.9 rr0-beta9
|
||||||
|
|
||||||
• Small documentation tweaking
|
• Small documentation tweaking
|
||||||
|
|
||||||
|
@ -2122,7 +2216,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Fix major bug in modifier matching
|
• Fix major bug in modifier matching
|
||||||
|
|
||||||
14.10 rr0-beta10
|
15.10 rr0-beta10
|
||||||
|
|
||||||
• Lots of documentation fixes
|
• Lots of documentation fixes
|
||||||
|
|
||||||
|
@ -2133,7 +2227,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Remove errant tab from joystick message.
|
• Remove errant tab from joystick message.
|
||||||
|
|
||||||
14.11 rr0-beta11
|
15.11 rr0-beta11
|
||||||
|
|
||||||
• Make autofire operate in absolute time, not linear time
|
• Make autofire operate in absolute time, not linear time
|
||||||
|
|
||||||
|
@ -2148,19 +2242,19 @@ set-axis joystick0axis19 disabled
|
||||||
• Dump at correct framerate if dumping interlaced NTSC
|
• Dump at correct framerate if dumping interlaced NTSC
|
||||||
(height=448).
|
(height=448).
|
||||||
|
|
||||||
14.12 rr0-beta12
|
15.12 rr0-beta12
|
||||||
|
|
||||||
• Actually include the complete source code
|
• Actually include the complete source code
|
||||||
|
|
||||||
• Keep track of RTC
|
• Keep track of RTC
|
||||||
|
|
||||||
14.13 rr0-beta13
|
15.13 rr0-beta13
|
||||||
|
|
||||||
• Document {save,start}time.{,sub}second.
|
• Document {save,start}time.{,sub}second.
|
||||||
|
|
||||||
• Intercept time() from bsnes core.
|
• Intercept time() from bsnes core.
|
||||||
|
|
||||||
14.14 rr0-beta14
|
15.14 rr0-beta14
|
||||||
|
|
||||||
• Allow disabling time() interception (allow build on Mac OS X)
|
• Allow disabling time() interception (allow build on Mac OS X)
|
||||||
|
|
||||||
|
@ -2178,7 +2272,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• New CSCD writer implementation.
|
• New CSCD writer implementation.
|
||||||
|
|
||||||
14.15 rr0-beta15
|
15.15 rr0-beta15
|
||||||
|
|
||||||
• Fix interaction of * and +.
|
• Fix interaction of * and +.
|
||||||
|
|
||||||
|
@ -2192,7 +2286,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Refactor controller input code.
|
• Refactor controller input code.
|
||||||
|
|
||||||
14.16 rr0-beta16
|
15.16 rr0-beta16
|
||||||
|
|
||||||
• Fix mouseclick scale compensation.
|
• Fix mouseclick scale compensation.
|
||||||
|
|
||||||
|
@ -2202,7 +2296,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Fix CSCD output (buffer overrun and race condition).
|
• Fix CSCD output (buffer overrun and race condition).
|
||||||
|
|
||||||
14.17 rr0-beta17
|
15.17 rr0-beta17
|
||||||
|
|
||||||
• JMD dumping support.
|
• JMD dumping support.
|
||||||
|
|
||||||
|
@ -2220,7 +2314,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Pass colors in one chunk from Lua.
|
• Pass colors in one chunk from Lua.
|
||||||
|
|
||||||
14.18 rr0-beta18
|
15.18 rr0-beta18
|
||||||
|
|
||||||
• New lua functions gui.line(), gui.status() and gui.circle(),
|
• New lua functions gui.line(), gui.status() and gui.circle(),
|
||||||
memory.vma_count(), memory.read_vma() and memory.find_vma().
|
memory.vma_count(), memory.read_vma() and memory.find_vma().
|
||||||
|
@ -2251,7 +2345,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Refactor more code into generic window code.
|
• Refactor more code into generic window code.
|
||||||
|
|
||||||
14.19 rr0-beta19
|
15.19 rr0-beta19
|
||||||
|
|
||||||
• Refactor message handling.
|
• Refactor message handling.
|
||||||
|
|
||||||
|
@ -2263,7 +2357,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Wxwidgets graphics plugin.
|
• Wxwidgets graphics plugin.
|
||||||
|
|
||||||
14.20 rr0-beta20
|
15.20 rr0-beta20
|
||||||
|
|
||||||
• Get rid of win32-crap.[ch]pp.
|
• Get rid of win32-crap.[ch]pp.
|
||||||
|
|
||||||
|
@ -2281,7 +2375,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Load/Save settings in wxwidgets gui.
|
• Load/Save settings in wxwidgets gui.
|
||||||
|
|
||||||
14.21 rr0-beta21
|
15.21 rr0-beta21
|
||||||
|
|
||||||
• Patch problems in bsnes core
|
• Patch problems in bsnes core
|
||||||
|
|
||||||
|
@ -2289,7 +2383,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Fix memory corruption in lcscreen::load()
|
• Fix memory corruption in lcscreen::load()
|
||||||
|
|
||||||
14.22 rr0-beta22
|
15.22 rr0-beta22
|
||||||
|
|
||||||
• Fix interpretting repeat counts in rrdata loading.
|
• Fix interpretting repeat counts in rrdata loading.
|
||||||
|
|
||||||
|
@ -2312,7 +2406,7 @@ set-axis joystick0axis19 disabled
|
||||||
• Fix titlebar version number (no, the last version wasn't
|
• Fix titlebar version number (no, the last version wasn't
|
||||||
'lsnes-0-beta21', it was 'lsnes rr0-beta21').
|
'lsnes-0-beta21', it was 'lsnes rr0-beta21').
|
||||||
|
|
||||||
14.23 rr0-beta23
|
15.23 rr0-beta23
|
||||||
|
|
||||||
• Fix memory corruption due to macro/field mixup
|
• Fix memory corruption due to macro/field mixup
|
||||||
|
|
||||||
|
@ -2334,7 +2428,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Fix crash related to full console mode.
|
• Fix crash related to full console mode.
|
||||||
|
|
||||||
14.24 rr0-beta24
|
15.24 rr0-beta24
|
||||||
|
|
||||||
• Wxwidgets: Allow bringing application to foreground on Mac OS
|
• Wxwidgets: Allow bringing application to foreground on Mac OS
|
||||||
X.
|
X.
|
||||||
|
@ -2345,7 +2439,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Lua: _SYSTEM table.
|
• Lua: _SYSTEM table.
|
||||||
|
|
||||||
14.25 rr0-beta25
|
15.25 rr0-beta25
|
||||||
|
|
||||||
• sdmp2sox: Pad soundtrack if using -l or -L.
|
• sdmp2sox: Pad soundtrack if using -l or -L.
|
||||||
|
|
||||||
|
@ -2358,7 +2452,7 @@ set-axis joystick0axis19 disabled
|
||||||
• Fix zip_writer bug causing warnings from info-zip and error
|
• Fix zip_writer bug causing warnings from info-zip and error
|
||||||
from advzip.
|
from advzip.
|
||||||
|
|
||||||
14.26 rr0-beta26
|
15.26 rr0-beta26
|
||||||
|
|
||||||
• Fix IPS patching code (use bsnes core IPS patcher).
|
• Fix IPS patching code (use bsnes core IPS patcher).
|
||||||
|
|
||||||
|
@ -2366,11 +2460,11 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Add feature to load headered ROMs.
|
• Add feature to load headered ROMs.
|
||||||
|
|
||||||
14.27 rr0-beta27
|
15.27 rr0-beta27
|
||||||
|
|
||||||
• Show command names when showing keybindings
|
• Show command names when showing keybindings
|
||||||
|
|
||||||
14.28 rr0
|
15.28 rr0
|
||||||
|
|
||||||
• Fix pause-on-end to be actually controllable
|
• Fix pause-on-end to be actually controllable
|
||||||
|
|
||||||
|
@ -2379,7 +2473,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Wxwidgets: Fix ROM loading.
|
• Wxwidgets: Fix ROM loading.
|
||||||
|
|
||||||
14.29 rr1-beta0
|
15.29 rr1-beta0
|
||||||
|
|
||||||
• Lua: Add gui.textH, gui.textV, gui.textHV
|
• Lua: Add gui.textH, gui.textV, gui.textHV
|
||||||
|
|
||||||
|
@ -2393,13 +2487,13 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Split UI and core into their own threads
|
• Split UI and core into their own threads
|
||||||
|
|
||||||
14.30 rr1-beta1
|
15.30 rr1-beta1
|
||||||
|
|
||||||
• Remove leftover dummy SRAM slot
|
• Remove leftover dummy SRAM slot
|
||||||
|
|
||||||
• Fix controller numbers.
|
• Fix controller numbers.
|
||||||
|
|
||||||
14.31 rr1-beta2
|
15.31 rr1-beta2
|
||||||
|
|
||||||
• Fix lsnes-dumpavi after interface change.
|
• Fix lsnes-dumpavi after interface change.
|
||||||
|
|
||||||
|
@ -2407,7 +2501,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Pack movie data in memory.
|
• Pack movie data in memory.
|
||||||
|
|
||||||
14.32 rr1-beta3
|
15.32 rr1-beta3
|
||||||
|
|
||||||
• Fix framecount/length given when loading movies.
|
• Fix framecount/length given when loading movies.
|
||||||
|
|
||||||
|
@ -2415,29 +2509,29 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Don't leak palette if freeing screen object.
|
• Don't leak palette if freeing screen object.
|
||||||
|
|
||||||
14.33 rr1-beta4
|
15.33 rr1-beta4
|
||||||
|
|
||||||
• Detect revisions.
|
• Detect revisions.
|
||||||
|
|
||||||
• Wxwidgets: Allow controlling dumper from the menu.
|
• Wxwidgets: Allow controlling dumper from the menu.
|
||||||
|
|
||||||
14.34 rr1-beta5
|
15.34 rr1-beta5
|
||||||
|
|
||||||
• Rewrite parts of manual
|
• Rewrite parts of manual
|
||||||
|
|
||||||
• Lua: Make it work with Lua 5.2.
|
• Lua: Make it work with Lua 5.2.
|
||||||
|
|
||||||
14.35 rr1-beta6
|
15.35 rr1-beta6
|
||||||
|
|
||||||
• Win32: Fix compile errors.
|
• Win32: Fix compile errors.
|
||||||
|
|
||||||
14.36 rr1-beta7
|
15.36 rr1-beta7
|
||||||
|
|
||||||
• Refactor controller input code.
|
• Refactor controller input code.
|
||||||
|
|
||||||
• Fix crash when using command line on SDL / Mac OS X.
|
• Fix crash when using command line on SDL / Mac OS X.
|
||||||
|
|
||||||
14.37 rr1-beta8
|
15.37 rr1-beta8
|
||||||
|
|
||||||
• Delete core/coroutine (obsolete)
|
• Delete core/coroutine (obsolete)
|
||||||
|
|
||||||
|
@ -2456,27 +2550,27 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• SDL: Fix command history
|
• SDL: Fix command history
|
||||||
|
|
||||||
14.38 rr1-beta9
|
15.38 rr1-beta9
|
||||||
|
|
||||||
• Fix some order-of-global-ctor bugs.
|
• Fix some order-of-global-ctor bugs.
|
||||||
|
|
||||||
14.39 rr1-beta10
|
15.39 rr1-beta10
|
||||||
|
|
||||||
• Fix crashes when quitting on Win32.
|
• Fix crashes when quitting on Win32.
|
||||||
|
|
||||||
14.40 rr1-beta11
|
15.40 rr1-beta11
|
||||||
|
|
||||||
• EVDEV: Queue keypresses from joystick, don't send directly
|
• EVDEV: Queue keypresses from joystick, don't send directly
|
||||||
|
|
||||||
• Wxwidgets: Load-Preserve that actually works.
|
• Wxwidgets: Load-Preserve that actually works.
|
||||||
|
|
||||||
14.41 rr1-beta12
|
15.41 rr1-beta12
|
||||||
|
|
||||||
• Wxwidgets: GUI for memory search.
|
• Wxwidgets: GUI for memory search.
|
||||||
|
|
||||||
• Warn about using synchronous queue in UI callback.
|
• Warn about using synchronous queue in UI callback.
|
||||||
|
|
||||||
14.42 rr1-beta13
|
15.42 rr1-beta13
|
||||||
|
|
||||||
• Remember last saved file for each ROM
|
• Remember last saved file for each ROM
|
||||||
|
|
||||||
|
@ -2490,7 +2584,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• SDL: Don't screw up commands with NUL codepoints.
|
• SDL: Don't screw up commands with NUL codepoints.
|
||||||
|
|
||||||
14.43 rr1-beta14
|
15.43 rr1-beta14
|
||||||
|
|
||||||
• Merge status panel and main window
|
• Merge status panel and main window
|
||||||
|
|
||||||
|
@ -2500,7 +2594,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Elminate cross calls in dump menu code.
|
• Elminate cross calls in dump menu code.
|
||||||
|
|
||||||
14.44 rr1-beta15
|
15.44 rr1-beta15
|
||||||
|
|
||||||
• Cancel pending saves command
|
• Cancel pending saves command
|
||||||
|
|
||||||
|
@ -2510,7 +2604,7 @@ set-axis joystick0axis19 disabled
|
||||||
|
|
||||||
• Wxwidgets: Read watch expressions in the right thread
|
• Wxwidgets: Read watch expressions in the right thread
|
||||||
|
|
||||||
14.45 rr1-beta16
|
15.45 rr1-beta16
|
||||||
|
|
||||||
• Wxwidgets: Don't prompt for member when running Lua script (Lua
|
• Wxwidgets: Don't prompt for member when running Lua script (Lua
|
||||||
doesn't support that).
|
doesn't support that).
|
||||||
|
|
Loading…
Add table
Reference in a new issue