From e451d41bf655a04c89c288bd8a82089ff6d3e103 Mon Sep 17 00:00:00 2001 From: James <16966330+BoomEX-UK@users.noreply.github.com> Date: Tue, 26 Mar 2024 09:41:49 +0000 Subject: [PATCH 1/2] bookmarks writeup --- docs/basics/bookmarks.md | 47 +++++++++++++++++++ docs/basics/img/memory-bookmarks-pause.png | Bin 0 -> 27780 bytes docs/basics/img/memory-bookmarks-preview.png | Bin 0 -> 16551 bytes 3 files changed, 47 insertions(+) create mode 100644 docs/basics/bookmarks.md create mode 100644 docs/basics/img/memory-bookmarks-pause.png create mode 100644 docs/basics/img/memory-bookmarks-preview.png diff --git a/docs/basics/bookmarks.md b/docs/basics/bookmarks.md new file mode 100644 index 0000000..9a533f7 --- /dev/null +++ b/docs/basics/bookmarks.md @@ -0,0 +1,47 @@ +## Memory Bookmarks +### The Basics +The Memory Bookmarks window is made visible from the RA Integration menu `RetroAchievements > Memory Bookmarks`. It allows you to list and control addresses of interest and is useful through all parts of RAM digging, achievement development and resolving issues. + +To add an address to the Memory Bookmarks you can press the `Add Bookmark` button on the memory inspector or `Bookmark Selected` button on the `Code Notes` window. + +When adding a new address to the Memory Bookmarks, the description will be populated from the Code Notes. You are able to change this description by typing in the Description field and it will not affect the code notes. + +You can sort the Memory Bookmarks manually by clicking an address and using the `Move Up` / `Move Down` buttons, or automatically by clicking the column headers + +![Memory Bookmarks Preview](img/memory-bookmarks-preview.png) +### Data Fields + +| Field | Notes | +| --------------------- | ---------------------------------------------------------------------- | +| Description | Loaded from the Code Notes but can be changed | +| Address | The memory address | +| Size | The [Memory Size](../resources/memory-sizes-diagram.md) of the address | +| Format | The displayed format of Value and Prior. Can be Hex or Dec | +| Value | The current value of the memory address | +| Prior | The value the Memory Address held before it's current value | +| Changes | The number of times the value has changed since reset | +| [Behavior](#Behavior) | How the emulator should respond to changes in the Value | + +### Behavior +The Behavior field allows you to specify what the emulator should do when a value changes. By default this field is blank however, it can be set to one of the following: + +| Behavior | Effect | +| --------------- | ---------------------------------------------------------- | +| Blank | The emulator will behave as normal when the value changes | +| Frozen | The emulator keep the memory address at it's current value | +| [Pause](#Pause) | Upon change, the emulator will be paused | +##### Pause +To help understand when a memory address changes, you can set the bookmark behavior to `Pause`. When one or more of these addresses changes the following will happen: +- RA Integration will display an alert box listing `Pause` the bookmarks that have changed +- The Memory Bookmarks window will highlight in red all of the `Pause` bookmarks that have changed +- The emulator will be put into a Pause state. See: [Emulator Hotkeys](../resources/emulator-hotkeys.md) + +![Memory Bookmarks Paused](img/memory-bookmarks-pause.png) +After pressing OK on the alert box, the red Memory Bookmarks will remain highlighted until the emulator is no longer Paused. + +### Useful Tips +- To jump to an address in the `Memory Editor` you can double click the value in the `Address` column +- You can bookmark the same address multiple times, this allows you to set different `Size` or `Format` fields. +- The `Changes` field is useful for discovering how often an address changes, you can reset all of the counters by pressing `Clear All Changes` +- When using the `Float` format, the value will be displayed as a decimal number +- If you want to change the behavior of multiple addresses at once, you can highlight them, hold `Ctrl` and click the Behavior field of the last one selected \ No newline at end of file diff --git a/docs/basics/img/memory-bookmarks-pause.png b/docs/basics/img/memory-bookmarks-pause.png new file mode 100644 index 0000000000000000000000000000000000000000..cfcf9d64649e6ad9fb4b53c7c50fe69978566ed4 GIT binary patch literal 27780 zcmb5VWmKHa(l(l4!QC}@65Jhvy99T_;LhMWgy3$$EqJiO-4Zl71b26r!H1mT*?Yh1 z`__KXTIc+`fu_5vyQ{7)xgyk5WHC@lQD41!g&{8|rT*#_oa?JsuN9DyV88KTS-5%i z>g_9eDRE7&tm6(eH}aYEvqz`lFC19#fx_%`DJv}BXUx+C1`(T_tF5|;<;R#SdnbpC zM2Qko%?DzOu!ZT2hx7%+w|;WS)0s&WD)A?rL1@Y^%(+{BETu0;E0Z^D^`$3~TSrN) z#47!aXZ)PAOARqv1DBm1YHPVSv>HGk{-z8cu6EeXt+sibJj~smEH2?;h9yXI3Vp$r zK&B4XM5lC>A+$nk>3Z5>yUXmlC(8y#Gjz5{Sq|? z^k6eGGD0`{b&Pp8k*)KN#<69GkXf%bcrWT@!a_Lgo(y{;6F&~twqwp-07v`t!_j;3 zCb{u^TobeFV zwYddH7>@&Gb5FLX&;G*EHFyPx-gB>BoqCq)*r5Eg)CG`!m$l`N1_69QN;-=3SIby= z)%y!AUe`}Dr}ke{GB4`Et^W*!w{E$RY2RBpYpjUf1O4??dV1QMZw3||9lFr(k`j75 zUzUmij^)U6q~#s#AIdFRX8y+8nT9+ek~RPmm4($ls#ADVkXXlj`0s24~OM5 zFA~LvhzBnhgkfzJH`whV3*xx+JKe9_vM(JUGYjV+WeG!3RXU$gLAMWzUJo%-Ub~e< z7qbRjA6-1gL@}(!G3qv_OEtV;N5zSDwd|@ettpsl=z<~&DOD{!fy|lc0HXidOH3SR znpvs(2roq&s-*b3y2XVJg^`Z?*`>oXi_{$W@dc-iYXi0oRjcQ(YhBN>BB8P|#fpb! zhbe}BNQ!L!Gg?T!`N?v0oZZ`P!8&+ZC2=paI{qef3qclWcCRB+Mh0mht%KCirq6w=p2qZUn$&+-TlHU zKJ58<{E+ONJ6x3IHn!(d(!2r8|zn|FA1Wh|7Fz+K< zxV#9gvLAU#$8yAb^qkBt7Mu>cywoLBnjik$mUWGb-tJ}Duo^TfjRKgvm3tGziE(f& z>6E0>sC}g7<AM4k z=OR}0+K__jKwSdqc?JF5_7^iNyd1QHYwp|Y45>?L52+jT)>s+?X@oG=6*FHLx2roi z;sgS8H&n9tUsug#)|7-Z;Be6Z%<+yAy_K@5fA=mjd>zGRyL1WBZHVR`(JsF2`U~~i z2q98m)2Y-?eqgo{hD>W5)+G(k30q>evg4Xp8r0o!1*af0m8>D)XaIo2gqn$O%)|u1 z7kba6voiYzyEEfu67LGn-?x99`@fP;likZ6zFl-H~@u!+mHT5?#1PaAfLH!(zJ>Q=Ze zINi7Y!gh9vwjVa+oip;x{!qe!5giz=13ZW%NO-ZNzMfNyFbRb0at_zJI(b9anPgqy zPG70?Tj414IX#OM1Hah?TmR}N>E6*1fTagg6rr~ZeP&?ut3Fgq`dul*w1Ea;p0A0_u1|ZJN2)y*%Rrw=22jo4VDF#>NcfPzY)^Eq4G5!G;A-Q-OQ4q7lne<$--Pj9>+zMyvNl z;L8k!S=&70h9YmbX86ZRU(T>Bq`jEodB1!y*P(bWI3rFUq{R{a3@BTd`tcd1P$t(hpv@)$KiN%Qh~vah6_4MS08o3;}GOq0rmF~Yly4Cy8s;>n7|*%R;NCM8Q%WMvf6{W&K_wZBh9H~ zZj(awzH9rRt+kA8V3<0ZyzM1glpeS0I_hnCd3n1`)}nG9=5f@Yjr7d4{%0DrHsALr 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 Date: Tue, 26 Mar 2024 13:34:38 +0000 Subject: [PATCH 2/2] Update bookmarks.md --- docs/basics/bookmarks.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/basics/bookmarks.md b/docs/basics/bookmarks.md index 9a533f7..c04336c 100644 --- a/docs/basics/bookmarks.md +++ b/docs/basics/bookmarks.md @@ -30,13 +30,14 @@ The Behavior field allows you to specify what the emulator should do when a valu | Blank | The emulator will behave as normal when the value changes | | Frozen | The emulator keep the memory address at it's current value | | [Pause](#Pause) | Upon change, the emulator will be paused | -##### Pause +#### Pause To help understand when a memory address changes, you can set the bookmark behavior to `Pause`. When one or more of these addresses changes the following will happen: - RA Integration will display an alert box listing `Pause` the bookmarks that have changed - The Memory Bookmarks window will highlight in red all of the `Pause` bookmarks that have changed - The emulator will be put into a Pause state. See: [Emulator Hotkeys](../resources/emulator-hotkeys.md) ![Memory Bookmarks Paused](img/memory-bookmarks-pause.png) + After pressing OK on the alert box, the red Memory Bookmarks will remain highlighted until the emulator is no longer Paused. ### Useful Tips @@ -44,4 +45,5 @@ After pressing OK on the alert box, the red Memory Bookmarks will remain highlig - You can bookmark the same address multiple times, this allows you to set different `Size` or `Format` fields. - The `Changes` field is useful for discovering how often an address changes, you can reset all of the counters by pressing `Clear All Changes` - When using the `Float` format, the value will be displayed as a decimal number -- If you want to change the behavior of multiple addresses at once, you can highlight them, hold `Ctrl` and click the Behavior field of the last one selected \ No newline at end of file +- To move multiple addresses next to each other in the list, hold `Ctrl` and click each address, then press the `Move Up` or `Move Down` button once +- If you want to change the [Behavior field](#Behavior) of multiple addresses at once, you can highlight them, hold `Ctrl` and click the Behavior field of the last one selected \ No newline at end of file