?
  1. Just finish it already!

    41.7%
  2. Keep redshift and rtcom only, rest goes to DS side

    8.3%
  3. Just make the exe patcher work on the 3DS, the rest is fine DS-side

    50.0%
  1. Rahkeesh

    Rahkeesh GBAtemp Maniac
    Member

    Joined:
    Apr 3, 2018
    Messages:
    1,406
    Country:
    United States
    Been playing around more with those outer rows in AGB and it seems like there's just plain numeric limits, which is odd if its the hex editor or repackers fault but I can believe your patching method can circumvent these limits. Its hard to nail down an exact range because it seems to vary by pixel, but if 3x and 4x are the center which actually have values in the default matrix, 2x / 5x seem to be limited to around +/- just under x1000, while 1x / 6x is somewhere under x400. So that would rather limit what you can use these rows for.
     
  2. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    I have never encountered any limits using the patcher, but I had the same issues when doing hex editing. I still have no idea why manually patching bytes crashes, but the patcher patching the exact same bytes works somehow...
     
  3. Alex658

    Alex658 GBAtemp Maniac
    Member

    Joined:
    Jun 4, 2010
    Messages:
    1,180
    Country:
    Venezuela
    Just checked the first post and i am amazed to see how much this has grown, is there an updated version of the first patcher Sono? Or is this all included within TWL menu++?
     
    Robz8 likes this.
  4. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    There will be a new patcher whose only purpose will be to patch an rtcom "bootloader" into TwlBg. This approach should fix the issue where sleep mode isn't working, and also this will allow the patch maker to bundle a custom rtcom version with more flexibility because at that point you wouldn't be limited by the amonut of code space left in TwlBg.cxi to put anything sensible in it.

    This is actually a huge deal, because the current rtcom is very limited due to the abysmally small code space available, and also is very slow due to it being tied to the ARM11 framerate (which is VSynced, so it's locked to ~60Hz).

    This new approach of being able to override rtcom is a dealbreaker, because the patch maker (or even TWiLightMenu++) can upload a custom rtcom blob at the start which can run on a separate thread, and the communication latency is reduced from 17ms to 1-7ms, and also the graphics shouldn't softlock while ARM11 code is running.

    Oh also, because we have more space at runtime than we have in the binary, TWiLightMenu++ could upload an rtcom blob at the start which has a Rosalina-like trainer in it, from where you could apply scale filters (on both axes! screw DMPGL :grog:), patches (screen centering?), and even apply a blue light filter!
    And let's not even talk about the other possibilities like button remapping, screen swapping, color-correction LUTs[1], limited SD access[2], or generally just access to the ARM11 hardware[3].

    [1] = sadly it's only a LUT, indexed as
    color.component = LUT.component[color.component]

    [2] = the DS-side code must have support for communicating File IO via rtcom
    [3] = some hardware MUST be accessed via functions already existing in TwlBg, or else an undefined behavior caused by race conditions could cause hardware damage (like how I had to hard reset my new3DSXL via MCU after I accidently disabled the gyro because I was writing to it too fast)
     
    Zense, Bluespheal, Nutez and 4 others like this.
  5. Rahkeesh

    Rahkeesh GBAtemp Maniac
    Member

    Joined:
    Apr 3, 2018
    Messages:
    1,406
    Country:
    United States
    At Sono's prompting and working within the hex editing limitations I updated my spreadsheet to use the full matrix. This allows for an "unsharp masking" style effect (negative gaussian blur) which might reduce sharpening artifacts. I'm not sure which I like more so I made it optional, you should change it from zero to a value equal to edge sharpening for something close to "normal" guassian blur at theta = 1 but you can fine tune the effect if you want. (So with .5 edge sharpening, use .5 for unsharp masking as a default) In my code.bin I need to paste over 4A19C- 4A1E3, it might be different for you so you can again search for the full default matrix by copying the hex values with everything set to 0.

    Google Sheets

    Edit: updated the unsharp masking to allow more user control, read above for details.
     

    Attached Files:

    Last edited: Dec 27, 2019
    seseiSeki, selcuk and Sono like this.
  6. selcuk

    selcuk Member
    Newcomer

    Joined:
    Oct 3, 2015
    Messages:
    43
    Country:
    wow. just wow. that is awesome. I can't try it tho since I want to use the widescreened agb more than the filtered agb but still pretty cool

    — Posts automatically merged - Please don't double post! —

    will this work with widescreened agb as well?
     
    Sono likes this.
  7. Rahkeesh

    Rahkeesh GBAtemp Maniac
    Member

    Joined:
    Apr 3, 2018
    Messages:
    1,406
    Country:
    United States
    With Sono's widescreen I think filtering does apply but only in one direction. (Vertical?) If you extract code.bin from his agbbg.cxi, or else feed his widescreen patcher a modified agbbg.xci, you might be able to search for the default matrix and overwrite it with stuff from my sheet. Not sure if he coded to disregard the default matrix locations or not.
     
  8. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    Yeah, my widescreen patch can only apply on the Y axis, because I didn't do the patches to load the X axis separately (changing the scaling requires entirely new scale kernels).

    The widescreen patch initializes the X axis to default values, and duplicates pixels instead of doing "Sono's crisp" due to space limitations.
     
    Rahkeesh and Robz8 like this.
  9. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    We did it again!

    @Gericom has already done WarioWare: Twisted support for GBARunner2 a loooong time ago, but we were missing the proper gyroscope drivers to be able to play it normally.

    Well, if you've been following the Rtc3DS repo, you should've noticed that I pushed a few gyro-related commits. I managed to get gyro working on the 2DS and new3DS! It's also possible to use old3DS, but the drivers for that are still work in progress.

    I recorded myself playing on my 2DS. I also tried on my new3DSXL, but the 2DS' small weight, and lack of foldability makes this game not only less frustrating to play, but also a lot more fun!

    Sorry for the audio issues, but I don't have a microphone input (stupid combo jack :angry:), so you have to put up with the quiet and noisy audio. At least the footage is 1080p60 this time, not 480p24...


    If you notice something off about how the gyro works in-game, please quote this post, because while it feels good with the current settings, it might be off from the original game.
     
    Zense, Bluespheal, iGom and 2 others like this.
  10. iGom

    iGom Member
    Newcomer

    Joined:
    Jul 5, 2019
    Messages:
    18
    Country:
    United Kingdom
    Where can I find patcher for gyro?

    Sent from my SM-N960F using Tapatalk
     
  11. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    I think the latest patcher contains the improved rtcom, so you might not need to re-patch TwlBg for now.

    Gyro support is uploaded from the DS side, rtcom is only the communication between DS ARM7 and 3DS ARM11.
     
  12. iGom

    iGom Member
    Newcomer

    Joined:
    Jul 5, 2019
    Messages:
    18
    Country:
    United Kingdom
    So I used this patcher https://gbatemp.net/index.php?posts/8809166 , the last pre-release of GbaRunner2 https://github.com/Gericom/GBARunner2/releases/tag/v20191228-021638_ee7f6a0 and gyro still doesn't work in Warioware Twisted

    Sent from my SM-N960F using Tapatalk


    Edit

    OK my bad, I didn't notice that it only works on 2DS and N3DSXL, I can confirm that it doesn't work on N2DSXL, but perfectly on O2DS, thanks for your hard work @Sono @Gericom
     
    Last edited: Dec 28, 2019
  13. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    Yeah, we had problems with new2DSXL, but I tested on 2DS, new3DSXL, and old3DS, and it works on all 3, except I need to do the drivers for old3DS. No idea why new2DSXL is so broken :/
     
  14. Gericom

    Gericom GBAtemp Maniac
    Member

    Joined:
    Jun 30, 2011
    Messages:
    1,278
    Country:
    Netherlands
    For me it eventually worked fine on n2dsxl. So not sure what is going on.
     
    Sono likes this.
  15. kieb0t

    kieb0t Newbie
    Newcomer

    Joined:
    Dec 29, 2019
    Messages:
    5
    Country:
    United Kingdom
    Any chance of a super simplified tutorial for newbies at any point? :P
     
    Dodain47 likes this.
  16. DonCaballero

    DonCaballero Advanced Member
    Newcomer

    Joined:
    Mar 8, 2017
    Messages:
    84
    Country:
    Brazil
    I'm on the same boat. Tremendous respect for the work @Sono and the others put into this, but my stupid just can't access it. I'm even getting hyped for AGB_firm purposes which is not even the focus of this thread lol.
     
    Dodain47 likes this.
  17. Sono

    OP Sono Modern slave; tsundere
    Member

    Joined:
    Oct 16, 2015
    Messages:
    1,952
    Country:
    Hungary
    The cia patcher is as simple as it'll get. The reason the patches are not in the patcher yet is because all this stuff is just prerelease, and highly experimental.
     
    RubenCantuVota and Robz8 like this.
  18. CaioHenrique360

    Newcomer

    Joined:
    Dec 30, 2019
    Messages:
    4
    Country:
    Brazil
    Ola você pode atializar o Reademe.md do twl_firm_patcher?
     
  19. Flame

    Flame Me > You
    Moderator

    Joined:
    Jul 15, 2008
    Messages:
    5,050
    can you post in English please.we are English speaking forum.
     
  20. CaioHenrique360

    Newcomer

    Joined:
    Dec 30, 2019
    Messages:
    4
    Country:
    Brazil
    [QUOTE = "Flame, post: 8904268, membro: 130770"] você pode postar em inglês please.we é um fórum de língua inglesa. Existe alguma maneira de automatizar esse processo?Any .cia or a program?
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - TWPatcher, filters, patches