(12-21-2019, 11:30 PM)Admentus Wrote: Both AR and Gecko refer to the same RAM addresses. AR just uses different code types than Gecko. The code type is indicated by the first two digits of the address. Normally each RAM code addresses starts with 80 or 81. For addresses in the 81 space, just increment the code type by 1.
There isn't anything inherently wrong with AR or Gecko. Both have their own advantages and disadvantages. I mostly prefer AR, since that is what I am the most familiar with. Searching for addresses with Dolphin usually refers to AR, but as said by changing the code type and adding it in the Gecko section you can make an Gecko Code out of it, and vice versa.
Dolphin has a fairly in-depth guide on AR: https://github.com/dolphin-emu/dolphin/w...Code-Types.
For example, An 8-bit multi-line "while not equal, turn of all codes" conditional is indicated by C8 (or C9 for addresses in the 81 space) when using AR. I am not entirely sure Gecko supports the same conditional. However Gecko has for example the "On/Off Switch" which is assigned through the code line CC000000 00000000.
For example:
Code:28134C58 00000008
00002FC2 00000000
CC000000 00000001
00002FC2 00000001
This toggles between the value 0 and 1 for 8-bit address 80002FC2 each time D-Pad Up is pressed.
There is an extensive code type guide on Gecko at: https://geckocodes.org/index.php?arsenal=1.
Make sure when trying to convert between AR and Gecko that your current functions and conditionals are supported in the other. Any issues that Dolphin previously had with Gecko seems to have been resolved by now. As long you keep to the latest development builds.
Simple writes are easy in both AR and Gecko. Both refer to the same code types. 00 or 01 for 8-bit writes, 02 or 03 for 16-bit writes and 04 or 05 for 32-bit writes. Nothing you need to change if all you are using are writes. Simple "if" conditional require some change. Gecko uses code type 28 or 29 for a 16-bit if while AR uses code type 0A or 0B for a 16-bit if. Actually... I am not even sure if Gecko supports an 8-bit "if". Gecko has great support for pointers through, which (confession time) I still completely suck at, which is also one of the reasons I stick to AR... For now... Most of the stuff I want to attempt works well enough with AR.
Personally I really love AR for their support with multi-line conditionals. Apply 00000000 40000000 each time you want to end the multi-line conditionals. It makes a lot of the magic possible. Well... I suppose it could be better. AR lacks a toggle function like mentioned for Gecko, which is onee of the reasons why some of the codes are partially (multi-part codes) in Gecko.
Now GameShark... That's completely horrible. I think it would be completely impossible to attempt to port the majority of the AR code I have worked on.
Dammit, it's tough.
hmm, and how the AR version of this code would look like for example?
C2AFF884 00000003 //Offplay Flag
7FC3F378 3A400001
C042FFF4 D042FFF0
60000000 00000000
If its too much work or anything, just say a word, I dont wanna bother you with this anymore
Thanks...
specs:
Windows 10
Intel i7-9900K @ 4.9Ghz
32 GB RAM
Nvidia 1080ti
Windows 10
Intel i7-9900K @ 4.9Ghz
32 GB RAM
Nvidia 1080ti