Tutorial  Updated

Custom NDS VC layouts

Editing the layout of the NDS screens of the VC is actually quite trivial. I reccomend you first open Paint.net of Photoshop and design your layout there. The TV resolution is 1280x720 and the DRC (GamePad) resolution is 876x480.

Example TV layout design:
FXK4Mf8.png


Final result:
1VDwsLA.png


How to make the design function inside the VC:

There is a sub-section to each layout in 'configuration_cafe.json' for the screen (most have 4, 2 screens on the TV and 2 on the GamePad, all support this if manually added). I have not explored the possibility of adding new lay-outs, only replacing ones with a custom one. For an example lay-out see below.

There are a few attributies you need to know how to set to create your own custom lay-out.

source: This is the screen of the DS, upper is the top screen, lower the bottom.
rotation: In degrees, this set's the rotation of the screen on the TV/GamePad
size: Size of the screen on TV/GamePad (recommended to be a multiplication of the original resolution but it doesn't have to be)
target: Render this on the TV or GamePad (called 'tv' and 'drc' respectively)
position: Position of the top left of the screen.

Custom backgrounds:
You can also create custom backgrounds for your or existing lay-outs. This is very easy to do.
1. Create your background (keep the positions of the screens in mind, I recommend placing these in the image when designing the background)
2. Place them in the content\0010\assets\textures folder. Save them as a PNG file, filename is not important.
3. In each layout there is a section with background, most point to tvback.png and drcback.png, just replace these filenames with your own and the custom background will now display!

Custom Lay-Out desctiptions:
1. Navigate to content\0010\data\strings
2. Open the folder for the language you want to edit (en for US and eur_en for EU english, other langues work the same)
3. Open strings.json
4. Search (ctrl+f) for the VCM_LAYOUT
5. Now edit the strings of the NAME and DESCRIPTION of the layout number that you replaced in configuration_cafe.json

Example configuration_cafe.json:
Code:
{
                    "screen": [
                        {
                            "source": "upper",
                            "rotation": 0,
                            "size": "640 480",
                            "target": "tv",
                            "position": "0 120"
                        },
                        {
                            "source": "lower",
                            "rotation": 0,
                            "size": "640 480",
                            "target": "tv",
                            "position": "640 120"
                        },
                        {
                            "source": "upper",
                            "rotation": 0,
                            "size": "512 384",
                            "target": "drc",
                            "position": "30 48"
                        },
                        {
                            "source": "lower",
                            "rotation": 0,
                            "size": "256 192",
                            "target": "drc",
                            "position": "568 240"
                        }
                    ],
                    "desc_string_id": "VCM_LAYOUT_10_EXPLANATION",
                    "background": [
                        {
                            "position": "0 0",
                            "rotation": 0,
                            "resource": "//content_dir/assets/textures/AA_bg_TV.png",
                            "target": "tv",
                            "size": "1280 720"
                        },
                        {
                            "position": "0 0",
                            "rotation": 0,
                            "resource": "//content_dir/assets/textures/AA_bg_DRC.png",
                            "target": "drc",
                            "size": "854 480"
                        }
                    ],
                    "name_string_id": "VCM_LAYOUT_1_NAME"
                },

Change manual:
This is a very minor thing, most people probably won't need this, but it is nice to have. Please note that as not all manuals are online you might have to scan in your manual and host it somewhere for this to work.

To change the manual you will have to modify the vcmenus.lua file in content\0010\data\scripts. Now search for the function openManual(), and change it to this:
Code:
function openManual()
    local manual_url
    manual_url = "http://yoursite.com/yourmanual.pdf"
    VC_openBrowser(manual_url)
end

If you still have questions please ask them so I can improve this tutorial!
 
Last edited by MRJPGames,

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,136
Trophies
2
XP
32,662
Country
Mexico
Wow.
Good work!
Thank you for the tutorial. :)

This will surely come in handy for people who want to record DS games without having to buy an additional recording capture device for DS games.
Just your usual TV capture card and you're ready to go!

Even better, you can enable the filters that Nintendo so delightfully locked out of our grasp to make the image even better. ;)
 
  • Like
Reactions: MRJPGames

MRJPGames

Pretty great guy
OP
Member
Joined
Aug 17, 2013
Messages
1,199
Trophies
1
Location
The Netherlands
Website
fizazy.com
XP
1,674
Country
Netherlands
Is a similar method availiable for N64 games?
No, sadly enough there is not. It could probably be done, but it would require (VERY) significantly more work than on the DS VC. This is mostly due to the fact that N64 does not have a background image by default (in which case that could be replaced), and that there are no layouts so also no configuration file for it either (which could have possibly allowed for a background setting). So because this is not present in the N64 VC it is not possible in a similar way and might never be made possible.
 

MelonSpeedruns

Active Member
Newcomer
Joined
Jun 27, 2015
Messages
35
Trophies
0
XP
685
Country
Canada
No, sadly enough there is not. It could probably be done, but it would require (VERY) significantly more work than on the DS VC. This is mostly due to the fact that N64 does not have a background image by default (in which case that could be replaced), and that there are no layouts so also no configuration file for it either (which could have possibly allowed for a background setting). So because this is not present in the N64 VC it is not possible in a similar way and might never be made possible.

Aw... this is unfortunate. Well, i'm glad that it's still something we can do with DS games!
 

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,136
Trophies
2
XP
32,662
Country
Mexico
Aw... this is unfortunate. Well, i'm glad that it's still something we can do with DS games!
The only way in which you might be able to modify N64 (and SNES/NES/GBA VC) is by hard-hacking the RPX/RPL file.

You have to convert the RPX/RPL into an ELF file, and then disassemble the ELF file into ARM commands.
Only then you might be able to tell what parts of the RPX are the ones that modify the aspect ratio, gamma correction, bilinear filters, etc. of the VC emulator.

Here's a thread that shows up how to modify the aspect ratio of SNES and NES games, and hopefully, soon N64 and GBA games too:
https://gbatemp.net/threads/understanding-and-changing-snes-vc-rpx-settings.425474/

Gamma correction hacking and filters might be on the way too.
 

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
31,284
Trophies
2
Age
38
Location
Dr. Wahwee's castle
XP
18,967
Country
United States
The only way in which you might be able to modify N64 (and SNES/NES/GBA VC) is by hard-hacking the RPX/RPL file.

You have to convert the RPX/RPL into an ELF file, and then disassemble the ELF file into ARM commands.
Only then you might be able to tell what parts of the RPX are the ones that modify the aspect ratio, gamma correction, bilinear filters, etc. of the VC emulator.

Here's a thread that shows up how to modify the aspect ratio of SNES and NES games, and hopefully, soon N64 and GBA games too:
https://gbatemp.net/threads/understanding-and-changing-snes-vc-rpx-settings.425474/

Gamma correction hacking and filters might be on the way too.


Only caveat with that is I've yet to find a good or even a free PowerPC disassembler because I can't program worth crap lol. If I can find one somewhere, I might be able to help with N64 too.
 

MRJPGames

Pretty great guy
OP
Member
Joined
Aug 17, 2013
Messages
1,199
Trophies
1
Location
The Netherlands
Website
fizazy.com
XP
1,674
Country
Netherlands
Added way to change the manual of the VC. As I cannot rename this thread I would like to ask a mod to rename it to: "[Tutorial] Customize the NDS VC" as I plan to explain how to tweak more than just the lay-outs and now the manual URL.
 

Walo

Well-Known Member
Member
Joined
Aug 4, 2008
Messages
171
Trophies
1
XP
478
Country
Chile
Could anyone upload a configuration with both screens side by side as big as they can be on the Gamepad?
 

MRJPGames

Pretty great guy
OP
Member
Joined
Aug 17, 2013
Messages
1,199
Trophies
1
Location
The Netherlands
Website
fizazy.com
XP
1,674
Country
Netherlands
Could anyone upload a configuration with both screens side by side as big as they can be on the Gamepad?
Wow, your really lazy if you can't do that yourself, aren't you?
But because I already made this for myself for my DS injects, here you go:
Code:
                {
                    "screen": [
                        {
                            "source": "upper",
                            "rotation": 0,
                            "size": "640 480",
                            "target": "tv",
                            "position": "0 120"
                        },
                        {
                            "source": "lower",
                            "rotation": 0,
                            "size": "640 480",
                            "target": "tv",
                            "position": "640 120"
                        },
                        {
                            "source": "upper",
                            "rotation": 0,
                            "size": "427 320",
                            "target": "drc",
                            "position": "0 80"
                        },
                        {
                            "source": "lower",
                            "rotation": 0,
                            "size": "427 320",
                            "target": "drc",
                            "position": "427 80"
                        }
                    ],
                    "desc_string_id": "VCM_LAYOUT_10_EXPLANATION",
                    "background": [
                        {
                            "position": "0 0",
                            "rotation": 0,
                            "resource": "//content_dir/assets/textures/AA_bg_TV.png",
                            "target": "tv",
                            "size": "1280 720"
                        },
                        {
                            "position": "0 0",
                            "rotation": 0,
                            "resource": "//content_dir/assets/textures/AA_bg_DRC.png",
                            "target": "drc",
                            "size": "854 480"
                        }
                    ],
                    "name_string_id": "VCM_LAYOUT_1_NAME"
                },
PS. I am lazy as well (though not to your extend), so I did not change the background texture directory, you don't have to I think, it should just be black if you have no file there but if it doesn't work you'll have to fix it yourself (IT IS NOT HARD).
 

Skajus

New Member
Newbie
Joined
Aug 22, 2018
Messages
3
Trophies
0
Age
40
XP
56
Country
Lithuania
Can someone make a tutorial for this turorial? :) Starting with: "so you have just hacked your wiiu and you have no idea what you are doing".
I read everywhere i could and coudn`t figure out where to find this configuration_cafe.json or content strings folder..
 

MRJPGames

Pretty great guy
OP
Member
Joined
Aug 17, 2013
Messages
1,199
Trophies
1
Location
The Netherlands
Website
fizazy.com
XP
1,674
Country
Netherlands
Can someone make a tutorial for this turorial? :) Starting with: "so you have just hacked your wiiu and you have no idea what you are doing".
I read everywhere i could and coudn`t figure out where to find this configuration_cafe.json or content strings folder..
This tutorial was made during the time where Loadiine was still the primary reason people hacked their Wii U's. Loadiine is a SD Loader allowing people to play games from the SD card without installing it. And was the best we had before USB installation became a possibility.
The format used for Loadiine can be seen as an extracted version of the game, where all the files are easily accessible. Due to this you could easily modify these files as well. With a USB installable package this can still be done I believe it would just have to be unpacked, then modified and then repacked, making it a lot less simple. As to how you would go about doing this, I would not know, I have been inactive in the Wii U Scene for quite some time now. But you can probably find a tutorial out there somewhere. Probably related to Wii U rom hacking, which this is in some ways anyways.
 

Skajus

New Member
Newbie
Joined
Aug 22, 2018
Messages
3
Trophies
0
Age
40
XP
56
Country
Lithuania
This tutorial was made during the time where Loadiine was still the primary reason people hacked their Wii U's. Loadiine is a SD Loader allowing people to play games from the SD card without installing it. And was the best we had before USB installation became a possibility.
The format used for Loadiine can be seen as an extracted version of the game, where all the files are easily accessible. Due to this you could easily modify these files as well. With a USB installable package this can still be done I believe it would just have to be unpacked, then modified and then repacked, making it a lot less simple. As to how you would go about doing this, I would not know, I have been inactive in the Wii U Scene for quite some time now. But you can probably find a tutorial out there somewhere. Probably related to Wii U rom hacking, which this is in some ways anyways.

Thank you for your answer. I had some time to play around with loadiine and i found everything. Can change layouts now and it is awesome.
 
  • Like
Reactions: MRJPGames

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Veho @ Veho:
    Mkay.
  • Veho @ Veho:
    I just ordered another package from China just to spite you.
  • SylverReZ @ SylverReZ:
    Communism lol
  • SylverReZ @ SylverReZ:
    OUR products
  • The Real Jdbye @ The Real Jdbye:
    @LeoTCK actually good quality products are dying out because they can't compete with dropshipped chinese crap
    +2
  • BakerMan @ BakerMan:
    @LeoTCK is your partner the sascrotch or smth?
  • Xdqwerty @ Xdqwerty:
    Good morning
  • Xdqwerty @ Xdqwerty:
    Out of nowhere I got several scars on my forearm and part of my arm and it really itches.
  • AdRoz78 @ AdRoz78:
    Hey, I bought a modchip today and it says "New 2040plus" in the top left corner. Is this a legit chip or was I scammed?
  • Veho @ Veho:
    @AdRoz78 start a thread and post a photo of the chip.
    +2
  • Xdqwerty @ Xdqwerty:
    Yawn
  • S @ salazarcosplay:
    and good morning everyone
    +1
  • K3Nv2 @ K3Nv2:
    @BakerMan, his partner is Luke
  • Sicklyboy @ Sicklyboy:
    Sup nerds
    +1
  • Flame @ Flame:
    oh hi, Sickly
  • K3Nv2 @ K3Nv2:
    Oh hi flame
  • S @ salazarcosplay:
    @K3Nv2 what was your ps4 situation
  • S @ salazarcosplay:
    did you always have a ps4 you never updated
  • S @ salazarcosplay:
    or were you able to get new ps4 tracking it \
    as soon as the hack was announced
  • S @ salazarcosplay:
    or did you have to find a used one with the lower firm ware that was not updated
  • K3Nv2 @ K3Nv2:
    I got this ps4 at launch and never updated since 9.0
  • K3Nv2 @ K3Nv2:
    You got a good chance of buying a used one and asking the seller how often they used or even ask for a Pic of fw and telling them not to update
    K3Nv2 @ K3Nv2: You got a good chance of buying a used one and asking the seller how often they used or even ask...