Homebrew TWPatcher - DS(i) mode screen filters and patches

  • Thread starter Sono
  • Start date
  • Views 530,630
  • Replies 2,083
  • Likes 92

Are you interested in a complete replacement of TwlBg which includes all patches?

  • Yes, I don't care how broken it will be!

    Votes: 118 77.6%
  • No, I don't want to use even more broken stuff

    Votes: 15 9.9%
  • Yes, but only in GBA mode, because I play DSi exclusives

    Votes: 10 6.6%
  • No, because I only use DS and DSi mode

    Votes: 9 5.9%

  • Total voters
    152

hamohamo

Well-Known Member
Member
Joined
Jan 16, 2017
Messages
375
Trophies
0
Age
25
XP
1,671
Country
Hmm weird, you checked and have boot.firm on the SD?

I'm really not sure what else it could be besides boot.firm not being on the SD (or maybe not being the latest), luma settings are wrong, or outdated TWiLight...
I am as amazed as you are. I updated Luma, system, TWiLight, NDS bootstrap, TWL patcher, rechecked boot.firm is indeed there. Oh well. I'm glad I can play DS games at all. Back in 2018 when I had an o3ds I didn't even dream of being able to play DS games.
 

Narxib

New Member
Newbie
Joined
Feb 11, 2022
Messages
1
Trophies
0
Age
23
Location
Alicante
XP
4
Country
Spain
Hi I have a question,I installed the .CIA and applied a filter but I don't see any changes on DS games. Does this filters work with r4 flashcards?
 

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,201
Trophies
2
Age
22
XP
17,837
Country
United States
Hi I have a question,I installed the .CIA and applied a filter but I don't see any changes on DS games. Does this filters work with r4 flashcards?
Yes, it does.
Make sure external FIRMs and modules are enabled in the Luma config menu, as well as Luma's boot.firm file being on the SD root.
 
  • Like
Reactions: BETA215 and Sono

ital

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,578
Trophies
0
XP
3,438
Question for anyone who has tried out the widescreen patches:

How is the image quality in comparison to standard format? I found DS on 3DS to be a blurry mess till I used Twilight to make the image crisp with its filters and the difference is day and night.

Do the widsecreen patched games keep the same crispness or do you get distortion to the image? Also does it crop the display and do games where you go from top to bottom screen still have the correct ratio/interplay?

Bear in mind I prefer fidelity to a mushy picture that fills the screen but I just updated Twilight today and thought I might give it a spin.
 

PercyRS

Member
Newcomer
Joined
Oct 23, 2020
Messages
7
Trophies
0
XP
522
Country
Argentina
Question for anyone who has tried out the widescreen patches:

How is the image quality in comparison to standard format? I found DS on 3DS to be a blurry mess till I used Twilight to make the image crisp with its filters and the difference is day and night.

Do the widsecreen patched games keep the same crispness or do you get distortion to the image? Also does it crop the display and do games where you go from top to bottom screen still have the correct ratio/interplay?

Bear in mind I prefer fidelity to a mushy picture that fills the screen but I just updated Twilight today and thought I might give it a spin.
if you use a game-specific widescreen cheat alongside the widescreen patch it usually looks good. there's some exceptions of course; I've found out that in pokemon games the stretching kinda fucks the overworld sprites and you lose fidelity, but I guess it depends on the game and there's no one-size-fits-all answer for your question

I've always wondered how the widescreen patch+cheat combo works in an old 3ds where the stretching only affects the width
 
  • Like
Reactions: ital

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,514
Trophies
2
Location
rehabilitation center
XP
6,275
Country
Hungary
I've always wondered how the widescreen patch+cheat combo works in an old 3ds where the stretching only affects the width

Actually, the patches work the same on both new3DS and old3DS.

There are two widescreen patches: MTX and GPU.




MTX is the capture card and image upscaler hardware for DS(i)/GBA games.

Long story short, it can take the average of pixels, and you can give a value on how much the neigboring pixels should contribute to the average.

The reason it looks so bad is (long story short) because the matrix data for widescreen and non-widescreen is different, so I'd have to reverse-engineer the existing matrixes, and "port" them to widescreen, which is a tedious and math-intensive task, something which I'm not really capable of. It's also way too much extra work, and way too complex of a patch to implement, so I decided to simply "zero out" the widescreen matrix, hence it looks so bad.

And yes, this is why vertically it's still affected by stretching, as it's the same height as the original matrixes, so they are compatible, and don't need to be zeroed out. This is the case because horizontal and vertical stretching is done independently from eachother.




GPU scaling works by patching the GPU driver to always "blur" the image using linear interpolation, and I just screw up the aspect ratio of the top screen enough so it stretches the image to 384x240 (the same as MTX stretches it to in widescreen mode).

I intentionally used the the words "screw up", as I'm destructively patching the GPU driver, so that the top screen is *always* stretched. The screen dimensions are hardcoded in so many places, that patching them is impossible, and it even causes bugs and crashes, so I simply can't, due to the hodgebodge of drivers, and how they interact with eachother.

Yes, this does mean I do need to corrupt the GPU driver for this patch, which is why it's so buggy :D
No, I can't work around this. Nintendo uses THREE (that is 3) graphics drivers, and they all glued it together in a bad and unstable way, and it's just a mess. I tried everything. It's just bad. Not again, please!

Edit: this is why I can't implement a mode800 patch, as the image data itself is hardcoded to be 240x400, and the drivers are so bad that there is simply no way to make it work.
 

ital

Well-Known Member
Member
Joined
Jun 16, 2006
Messages
1,578
Trophies
0
XP
3,438
if you use a game-specific widescreen cheat alongside the widescreen patch it usually looks good. there's some exceptions of course; I've found out that in pokemon games the stretching kinda fucks the overworld sprites and you lose fidelity, but I guess it depends on the game and there's no one-size-fits-all answer for your question

I've always wondered how the widescreen patch+cheat combo works in an old 3ds where the stretching only affects the width


Thanks, is it true you can't use TW sharpness patches and widescreen hacks together? Also is there any way to make GBA games look better on 3DS using this tech?

@Sono nice to see you pop in and thanks for creating this app, its awesome.
 
  • Like
Reactions: Sono

ghjfdtg

Well-Known Member
Member
Joined
Jul 13, 2014
Messages
945
Trophies
0
XP
2,173
Country
The scaling for GBA games is pretty much already as good as it gets. You can try open_agb_firm which has slightly improved hardware scaling. With x1.5 there is just not much you can do.
 
  • Like
Reactions: ital and Sono

stranno

Well-Known Member
Member
Joined
Feb 17, 2013
Messages
802
Trophies
1
XP
2,333
Country
Spain
Actually, the patches work the same on both new3DS and old3DS.
Thank you for the explanation. It is certainly a disaster.

Is there any theory why Nintendo used 800/400x240 instead of a DS 2X or at least GBA 2X? VRAM reasons? Is the Pica200 that bad? The 3D mode limited all other graphic modes?

To be fair, Vita has PSP 2X and the default filtering sucks as well :lol: (thank god for Adrenaline)
 
  • Like
Reactions: ZipMartin

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,514
Trophies
2
Location
rehabilitation center
XP
6,275
Country
Hungary
Thanks, is it true you can't use TW sharpness patches and widescreen hacks together? Also is there any way to make GBA games look better on 3DS using this tech?

Yeah, I said the technical reason in my post for why I didn't do it.
It is possible to implement though, but it's so much math and hard work effort that I just can't do it.

There is a way to make GBA games look better, but it needs the GPU, and it's not possible to reuse Nintendo's own code.
While I am working on a replacement with support to edit the filtering in real time, look at open_agb_firm, it is currently the best way to play GBA games on your 3DS.

Thank you for the explanation. It is certainly a disaster.

Is there any theory why Nintendo used 800/400x240 instead of a DS 2X or at least GBA 2X? VRAM reasons? Is the Pica200 that bad? The 3D mode limited all other graphic modes?

To be fair, Vita has PSP 2X and the default filtering sucks as well :lol: (thank god for Adrenaline)

While I don't know why Nintendo chose these specs, I can tell you that the PICA is not clocked at a high enough clock rate to be usable, so they had to limit the resolution of the display to allow more space for games running at 60FPS with good enough graphics fidelity.

On the other hand, due to hardware limitations inside P3D (the GPU part of the PICA200 chip), it's a bit difficult to work with high resolution textures (framebuffer as well) which would be needed for higher resolutions.
 

benamin

Active Member
Newcomer
Joined
Feb 21, 2022
Messages
32
Trophies
0
Age
16
Location
Washington
XP
55
Country
United States
I got wide screen working with nds forwarder but now i can’t turn it off. I don’t want the stretched look for some games but the default setting is stretched. When I change it to “no” in per game settings it does nothing… Im not sure what to do
 

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,201
Trophies
2
Age
22
XP
17,837
Country
United States
I got wide screen working with nds forwarder but now i can’t turn it off. I don’t want the stretched look for some games but the default setting is stretched. When I change it to “no” in per game settings it does nothing… Im not sure what to do
Which forwarder tool did you use?
 

Pk11

A catgirl with a DSi
Member
Joined
Jun 26, 2019
Messages
736
Trophies
1
Age
20
Location
米国
Website
pk11.us
XP
2,545
Country
United States
Did you follow TWiLight Menu++'s widescreen setup guide? (make sure to rename and move the CXI, if you leave it in sd:/luma/sysmodules it'll be widescreen everywhere)

You can put the CXI at sd:/_nds/ntr-forwarder/Widescreen.cxi instead of the TWiLight Menu++ folder if you want, but make sure it's moved and renamed.
 
  • Like
Reactions: benamin

benamin

Active Member
Newcomer
Joined
Feb 21, 2022
Messages
32
Trophies
0
Age
16
Location
Washington
XP
55
Country
United States
Did you follow TWiLight Menu++'s widescreen setup guide? (make sure to rename and move the CXI, if you leave it in sd:/luma/sysmodules it'll be widescreen everywhere)

You can put the CXI at sd:/_nds/ntr-forwarder/Widescreen.cxi instead of the TWiLight Menu++ folder if you want, but make sure it's moved and renamed.
Hmmm I remember setting it up exactly like that but it still remains wide screen no matter what
 

benamin

Active Member
Newcomer
Joined
Feb 21, 2022
Messages
32
Trophies
0
Age
16
Location
Washington
XP
55
Country
United States
Did you follow TWiLight Menu++'s widescreen setup guide? (make sure to rename and move the CXI, if you leave it in sd:/luma/sysmodules it'll be widescreen everywhere)

You can put the CXI at sd:/_nds/ntr-forwarder/Widescreen.cxi instead of the TWiLight Menu++ folder if you want, but make sure it's moved and renamed.
once i get home i’m gonna try deleting TwlBg.cxi from sd/luma/sysmodules

i think i already did that though
 

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,201
Trophies
2
Age
22
XP
17,837
Country
United States
This is the first I've heard of this issue.
On O2DS consoles, the bottom screen is dim when using widescreen.

Someone on Discord is having this issue.

4:3
IMG_20220301_025456.jpg


16:10
IMG_20220301_025341.jpg


I know this is no longer being worked on, but is this a known issue, or is this a user-specific issue?
 
  • Like
Reactions: benamin
General chit-chat
Help Users
  • No one is chatting at the moment.
    AliceCE @ AliceCE: