1. PixelatedIvan

    OP PixelatedIvan Member
    Newcomer

    Joined:
    Sep 24, 2017
    Messages:
    49
    Country:
    Canada
    Especially since Switch homebrew is in it's infancy stage, programming for it seems fun to do.

    I already know a bit of JS and C#, is there any guide or documentation about developing Switch Homebrew apps?
     
  2. Quantumcat

    Quantumcat Dead and alive
    Member

    Joined:
    Nov 23, 2014
    Messages:
    15,149
    Country:
    Australia
    • You'll need C/C++.
    • Look at open source apps that have already been written
    • Make sure you can compile and run it on your Switch
    • Make changes and see what happens
    • When you understand how it works and the structure of it
    • Create your own new app
     
  3. ElijahZAwesome

    ElijahZAwesome Hey. I exist. Woo
    Member

    Joined:
    Jul 12, 2016
    Messages:
    833
    Country:
    United States
    I tried to find documentation too, but it's essentially non-existent. Just think of a feature that exists in an existing app that you want it your app, and find the source code and try to implement it into your app. For some basic things, check out the Switch Examples repo and you'll learn a lot there.

    Also learn C :P C# Ain't gonna help ya, and unless you're willing to use the new Brew.js exclusively, JS won't either.
     
    Quantumcat likes this.
  4. rock88

    rock88 Member
    Newcomer

    Joined:
    May 19, 2018
    Messages:
    30
    Country:
    Russia
    Hi, I'm newbie in switch dev, and have few questions:
    • How connect to switch over ssh/telnet/ftp/etc (on 5.0.2)
    • How see switch debug log in my pc over usb
    • How connect to app over gdb (or some else, for debug purpose)
    Currently I builded few examples, but I can't quick upload binary to switch (each time eject sd card/mount to pc/copy binary/insert sd card to switch/enter to rcm/enter to cfm it a very long time) and see log.
     
  5. jimmyj

    jimmyj Official founder of altariaism. Copyright jimmyj
    Member

    Joined:
    May 26, 2017
    Messages:
    1,480
    Country:
    United Kingdom
    just look at already written apps. Like I did,I will never release any of it,but it was fun doing
     
    -----a likes this.
  6. rock88

    rock88 Member
    Newcomer

    Joined:
    May 19, 2018
    Messages:
    30
    Country:
    Russia
    Ok, I found ftp server - ftpd (available in the appstore) and it's perfect work on 5.0.2.

    What about log and debug? Anyway I can write log into a file and read it over ftp xD
     
  7. AileenLumina

    AileenLumina Python main, software engineer and API designer
    Member

    Joined:
    Sep 27, 2015
    Messages:
    631
    Country:
    Germany
    Nobody pointed it out yet, so: You can also just learn Python and code Switch homebrew in Python! Should be a lot easier than C or C++, I like to think. :P
     
  8. Technicmaster0

    Technicmaster0 GBAtemp Psycho!
    Member

    Joined:
    Oct 22, 2011
    Messages:
    4,186
    Country:
    Gambia, The
    I think there is a way to use printf over network and you can always write stuff into a file. But you would have to figure it out on your own.
     
  9. cpasjuste

    cpasjuste GBAtemp Maniac
    Member

    Joined:
    Aug 27, 2015
    Messages:
    1,019
    Country:
    France
    rock88, eliboa and AileenLumina like this.
  10. delete12345

    delete12345 GBAtemp Advanced Fan
    Member

    Joined:
    Feb 27, 2010
    Messages:
    681
    Country:
    United States
    1. Install devkitPro's devkitARM from Github.
    2. Upon finished installation, navigate to installation folder.
    3. Run msys2.
    4. Type "pacman -Sl" (That's an lowercase L, not uppercase I)
    5. Install all the packages you need using "pacman -Syyu [package 1 name] [package 2 name] [package 3 name] ...", with whitespaces in between each package name. All names must be fully matching the one shown in the list above.
    6. Navigate to the devkitARM installation root folder.
    7. Open templates folder.
    8. Copy the "switch/templates/application/Makefile". You need this.
    9. Paste your copied Makefile to a destination folder, the folder that you'll be working Switch homebrew apps with. We'll call this folder, [DESTINATION] for now.
    10. In that same destination folder, create a new folder called "source".
    11. In your "source" folder, this is where you put your C++ and C codes in.
    12. Open Makefile. Use whatever text editing software you want to use. I preferably use Visual Studio 2017, because it supports a lot of things, and Linux libraries now, but all other editors are fine. Stick with it.
    13. Edit the Makefile contents by following the instructions.
    14. Open up a terminal / console.
    15. Navigate to your modified Makefile through the terminal / console.
    16. Type "make".
    17. If all is successful, you should see 5 types of generated files with your destination folder as the names. You need your [DESTINATION].nro.
    18. Power on your Switch.
    19. Do whatever you need to do to get into Homebrew Launcher.
    20. In the Homebrew Launcher, execute NXLink. It should now freeze, and is attempting to wait on you to send your NRO files over to the Switch.
    21. Back to the terminal / console, run/launch "nxlink -ip [YOUR SWITCH'S IP ADDRESS, WITHOUT PORT NUMBER] [DESTINATION].nro".
    22. See your NRO file booting and running.
    23. Rinse and repeat. Total setup should take about 30 minutes to 1 hour, depending on how fast you access your Homebrew Launcher.
     
    Last edited by delete12345, May 20, 2018
    SupImBirDy, JJTapia19, rock88 and 2 others like this.
  11. kprovost7314

    kprovost7314 GBAtemp's Official Shota and Bara Master
    Member

    Joined:
    Dec 24, 2014
    Messages:
    1,978
    Country:
    United States
    Where do I find the nxlink nro for Switch?
     
  12. rock88

    rock88 Member
    Newcomer

    Joined:
    May 19, 2018
    Messages:
    30
    Country:
    Russia
    Just open a hbmenu and press Y button, after this you can upload *.nro over nxlink (located at devkitpro/devkitA64/bin).
     
    kprovost7314 and hippy dave like this.
  13. rock88

    rock88 Member
    Newcomer

    Joined:
    May 19, 2018
    Messages:
    30
    Country:
    Russia
    Thanks, also I found a new example in switchbrew/switch-examples - nxlink_stdio, in the app needs use
    Code:
    socketInitializeDefault();
    nxlinkStdio();
    
    after this "printf" appear in terminal.
     
    hippy dave likes this.
  14. kprovost7314

    kprovost7314 GBAtemp's Official Shota and Bara Master
    Member

    Joined:
    Dec 24, 2014
    Messages:
    1,978
    Country:
    United States
    Doesn't seem to work, unless it's meant to stay on the hbmenu, then that's an error on my PC's end.
     
  15. rock88

    rock88 Member
    Newcomer

    Joined:
    May 19, 2018
    Messages:
    30
    Country:
    Russia
    Maybe I use other version of hbmenu, check in the attachments.
     

    Attached Files:

    Cheeze and kprovost7314 like this.
  16. 2Siralv

    2Siralv GBAtemp Regular
    Member

    Joined:
    May 12, 2018
    Messages:
    109
    Country:
    Canada
    Ive installed devkitpro on win10 and where is the output folder or folder to add source code and then run the make file and for the makefile do i nees to make my own or can i usw the makefile.switch and makefile.libnx
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - programming, homebrew, switch